Oracle PL/SQL常用命令
一、Oracle PL/SQL使用1、用户管理数据库系统权限(DataBaseSystem Privilege) 数据库对象权限(DataBaseSystem Privilege) Orac
一、Oracle PL/SQL使用
1、用户管理
数据库系统权限(DataBaseSystem Privilege)
数据库对象权限(DataBaseSystem Privilege)
Oracle内部用户Sys和System
创建用户:create user user_test identified by user_test123;
修改用户:alter user user_test identified by user_test123;
删除用户:drop user user_test;
删除用户与其对象:drop user user_testCASCADE;
用户授权连接:grant connect,resource to user_test;
在sqlplus 中使用以下命令可以查出用户表的清单:
sqlplus scott/tiger -- 使用sqlplus 登录 oracle 数据库
col table_name format a30; -- 指定table_name 的列宽
col table_type format a10; -- 指定table_type 的列宽
select * from cat; -- 列出用户数据表
2、角色管理
1)Connect Role(连接角色):临时用户,不需要建表的用户。
2)Resource Role(资源角色):更可靠和正式的数据库用户。
3)Dba Role(数据库管理员角色):拥有所有的系统权限。
操作:
grant(授权)命令:grant connect,resource to user_test;
revoke(撤销)命令:revoke connect,resource to user_test;
创建角色:除了系统自带的3种标准角色外用户可以创建自己的role.
create role user_test_role;
角色授权:grant select on t_service to user_test_role;
注:拥有student角色的用户都具有对t_service表的select权限。
删除角色:droprole user_test_role;
查看用户有哪些角色:
select grant_role fromdba_role_privs where grantee='scott';
查看用户有哪些权限:
select privilege from dba_sys_privs wheregrantee='scott';
select privilege fromdba_sys_privs where grantee='CONNECT';
默认用户:Sys:oralce中的超级用户,主要用来维护系统信息和管理实例。
System:oracle中默认的系统管理员,拥有dba权限。通常管理oracle数据库的用户、权限和存储等。
Scott:oracle数据库的一个示范账户,在数据库安装时创建。
用户授权: grant 权限 [ on 对象名 ] to 用户名 [ with grant option];
grant select on scott.emp to user_test with grant option;
grant create session to user_test;
3、权限管理
授予user_test用户查看emp表数据的权限
1.验证user_test对scott用户的emp表进行查询的权限。
SQL>select *from scott.emp;
2.为用户user_test授予scott用户的emp表的查询权限。
SQL>conns cott/scott@test;
SQL>grant select on scott.emp to user_test;
3.使用user_test账户登录并查询scott用户的表emp信息。
SQL>conn user_test/u01@test;
SQL>select *from scott.emp;
收回权限: revoke 权限 [ on 对象名 ] from 用户名
SQL>revoke select on scott.emp from user_test;
修改用户密码:alter user 用户名 identified by 新密码;
与权限相关的表:
1.dba_sys_privs(所有系统权限)
2.user_sys_privs(用户拥有的系统权限)
3.user_col_privs(用户拥有的对象权限)
常用的系统权限赋值语句:
SQL>grant create session to user_test;
SQL>grant create table to user_test;
SQL>grant unlimited tablespace to user_test;
SQL>grant create session to public;
对象权限的赋予与撤销语句:
SQL>grant select on mytable to user_test;
SQL>grant all on mytable to user_test;
SQL>revoke select on mytable from user_test;
SQL>revoke all on mytable from user_test;
Oracle中除了能在表对象上赋予相应的权限,,还能将权限控制到表的列上:
SQL>grant update(name)on mytable to user_test;
SQL>grant insert(id) on mytable to user_test;
4、口令管理
使用profile管理用户口令
profile是口令限制,资源管理的命令集合,当建立数据库时,Oracle会自动建立名词为default的profile。当建立用户没有指定profile选项,那Oroacle就会将default分配给用户。
关键字列表:
SQL>create profile 配置文件名称 limit failed_login_attempts 尝试次数password_lock_time 锁定天数;
SQL>alter user 用户名 profile 配置文件名称;
例:指定tea用户最多只能尝试3次登陆,锁定时间为2天,下面可以实现。
SQL>create profile lock_account limit failed_login_attempts 3 password_lock_time 2;
SQL>alter user tea profile lock_account;
给账号解锁
SQL>alter user user_test account unlock;
例:为了让用户定期修改密码可使用终止口令完成。
SQL>create profile myprofile limit password_life_time 10 password_grace_time 2;
给用户解锁
SQL>alter user user_testprofile myprofile;
删除profile
SQL>drop profile myprofile[cascade];
5、有关表sequence
创建主键自增表
1)创建表 t_test
create table t_test(
userid number(10) NOT NULL primary key, /*主键,自动增加*/
username varchar2(20)
);
2)创建自动增长序列
CREATESEQUENCE t_test_increase_sequence
INCREMENTBY 1 -- 每次加几个
START WITH 1 -- 从1开始计数
NOMAXVALUE -- 不设置最大值 ,设置最大值:maxvalue 9999
NOCYCLE -- 一直累加,不循环
CACHE 10;
示例:CREATE SEQUENCE t_service_sequence INCREMENT BY1 START WITH 1 NOMAXVALUE NOCYCLE CACHE 10;
3)创建触发器(客户端工具添加)
CREATE TRIGGER t_service_triggerBEFORE
insert ON t_service FOR EACH ROW /*对每一行都检测是否触发*/
begin
select t_service_sequence.nextvalinto:New.userid from dual;
end;
示例:
create orreplacetrigger t_service_trigger
before insert on t_service
for eachrow
declare
-- local variables here
begin
select t_service_sequence.nextvalinto:New.idfrom dual;
end t_service_trigger;
4)提交
commit;
5)测试
insert intoTest_Increase(Username) values('test');
6、远程连接
在连接之前设置好监听程序然后使用如下命令:
sqlplus usr/pwd@//host:port/sid
二、SpringJDBC配置
#flow config jdbcfor oracle
jdbc.driver=oracle.jdbc.driver.OracleDriver
jdbc.url=jdbc:oracle:thin:@127.0.0.1:1521:orcl
jdbc.username=user_test
jdbc.password=user_test123
xml里配置方言:
相关阅读:
rlwrap - 解决Linux下SQLPLUS退格、上翻键乱码问题
SQLPLUS spool 到动态日志文件名
Oracle SQLPLUS提示符设置
通过设置SQLPLUS ARRAYSIZE(行预取)加快SQL返回速度

Outils d'IA chauds

Undresser.AI Undress
Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover
Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool
Images de déshabillage gratuites

Clothoff.io
Dissolvant de vêtements AI

AI Hentai Generator
Générez AI Hentai gratuitement.

Article chaud

Outils chauds

Bloc-notes++7.3.1
Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise
Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1
Puissant environnement de développement intégré PHP

Dreamweaver CS6
Outils de développement Web visuel

SublimeText3 version Mac
Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Les dernières versions d'Apple des systèmes iOS18, iPadOS18 et macOS Sequoia ont ajouté une fonctionnalité importante à l'application Photos, conçue pour aider les utilisateurs à récupérer facilement des photos et des vidéos perdues ou endommagées pour diverses raisons. La nouvelle fonctionnalité introduit un album appelé "Récupéré" dans la section Outils de l'application Photos qui apparaîtra automatiquement lorsqu'un utilisateur a des photos ou des vidéos sur son appareil qui ne font pas partie de sa photothèque. L'émergence de l'album « Récupéré » offre une solution aux photos et vidéos perdues en raison d'une corruption de la base de données, d'une application d'appareil photo qui n'enregistre pas correctement dans la photothèque ou d'une application tierce gérant la photothèque. Les utilisateurs n'ont besoin que de quelques étapes simples

Comment utiliser MySQLi pour établir une connexion à une base de données en PHP : Inclure l'extension MySQLi (require_once) Créer une fonction de connexion (functionconnect_to_db) Appeler la fonction de connexion ($conn=connect_to_db()) Exécuter une requête ($result=$conn->query()) Fermer connexion ( $conn->close())

Pour gérer les erreurs de connexion à la base de données en PHP, vous pouvez utiliser les étapes suivantes : Utilisez mysqli_connect_errno() pour obtenir le code d'erreur. Utilisez mysqli_connect_error() pour obtenir le message d'erreur. En capturant et en enregistrant ces messages d'erreur, les problèmes de connexion à la base de données peuvent être facilement identifiés et résolus, garantissant ainsi le bon fonctionnement de votre application.

L'utilisation de la fonction de rappel de base de données dans Golang peut permettre : d'exécuter du code personnalisé une fois l'opération de base de données spécifiée terminée. Ajoutez un comportement personnalisé via des fonctions distinctes sans écrire de code supplémentaire. Des fonctions de rappel sont disponibles pour les opérations d'insertion, de mise à jour, de suppression et de requête. Vous devez utiliser la fonction sql.Exec, sql.QueryRow ou sql.Query pour utiliser la fonction de rappel.

Cet article fournira une introduction détaillée sur la façon d'installer et d'enregistrer une application de trading Bitcoin. L'application Bitcoin Trading permet aux utilisateurs de gérer et d'échanger des crypto-monnaies telles que Bitcoin. L'article guide les utilisateurs dans le processus d'installation et d'enregistrement étape par étape, y compris le téléchargement des applications, la création de comptes, la réalisation d'identité et le premier dépôt. L'objectif de l'article est de fournir aux débutants des directives claires et faciles à comprendre pour les aider à entrer facilement dans le monde du trading Bitcoin.

Les données JSON peuvent être enregistrées dans une base de données MySQL à l'aide de la bibliothèque gjson ou de la fonction json.Unmarshal. La bibliothèque gjson fournit des méthodes pratiques pour analyser les champs JSON, et la fonction json.Unmarshal nécessite un pointeur de type cible pour désorganiser les données JSON. Les deux méthodes nécessitent la préparation d'instructions SQL et l'exécution d'opérations d'insertion pour conserver les données dans la base de données.

Comment intégrer GoWebSocket à une base de données : Configurer une connexion à la base de données : Utilisez le package database/sql pour vous connecter à la base de données. Stocker les messages WebSocket dans la base de données : utilisez l'instruction INSERT pour insérer le message dans la base de données. Récupérer les messages WebSocket de la base de données : utilisez l'instruction SELECT pour récupérer les messages de la base de données.

Pour éviter les erreurs de connexion à la base de données PHP, suivez les meilleures pratiques : recherchez les erreurs de connexion et faites correspondre les noms de variables avec les informations d'identification. Utilisez un stockage sécurisé ou des variables d’environnement pour éviter de coder en dur les informations d’identification. Fermez la connexion après utilisation pour empêcher l'injection SQL et utilisez des instructions préparées ou des paramètres liés.
