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返回速度

ホットAIツール

Undresser.AI Undress
リアルなヌード写真を作成する AI 搭載アプリ

AI Clothes Remover
写真から衣服を削除するオンライン AI ツール。

Undress AI Tool
脱衣画像を無料で

Clothoff.io
AI衣類リムーバー

AI Hentai Generator
AIヘンタイを無料で生成します。

人気の記事

ホットツール

メモ帳++7.3.1
使いやすく無料のコードエディター

SublimeText3 中国語版
中国語版、とても使いやすい

ゼンドスタジオ 13.0.1
強力な PHP 統合開発環境

ドリームウィーバー CS6
ビジュアル Web 開発ツール

SublimeText3 Mac版
神レベルのコード編集ソフト(SublimeText3)

ホットトピック









Apple の最新リリースの iOS18、iPadOS18、および macOS Sequoia システムでは、さまざまな理由で紛失または破損した写真やビデオをユーザーが簡単に回復できるように設計された重要な機能が写真アプリケーションに追加されました。この新機能では、写真アプリのツール セクションに「Recovered」というアルバムが導入され、ユーザーがデバイス上に写真ライブラリに含まれていない写真やビデオがある場合に自動的に表示されます。 「Recovered」アルバムの登場により、データベースの破損、カメラ アプリケーションが写真ライブラリに正しく保存されない、または写真ライブラリを管理するサードパーティ アプリケーションによって失われた写真やビデオに対する解決策が提供されます。ユーザーはいくつかの簡単な手順を実行するだけで済みます

PHP でデータベース接続エラーを処理するには、次の手順を使用できます。 mysqli_connect_errno() を使用してエラー コードを取得します。 mysqli_connect_error() を使用してエラー メッセージを取得します。これらのエラー メッセージをキャプチャしてログに記録することで、データベース接続の問題を簡単に特定して解決でき、アプリケーションをスムーズに実行できるようになります。

MySQLi を使用して PHP でデータベース接続を確立する方法: MySQLi 拡張機能を含める (require_once) 接続関数を作成する (functionconnect_to_db) 接続関数を呼び出す ($conn=connect_to_db()) クエリを実行する ($result=$conn->query()) 閉じる接続 ( $conn->close())

Golang でデータベース コールバック関数を使用すると、次のことを実現できます。 指定されたデータベース操作が完了した後にカスタム コードを実行します。追加のコードを記述せずに、個別の関数を通じてカスタム動作を追加します。コールバック関数は、挿入、更新、削除、クエリ操作に使用できます。コールバック関数を使用するには、sql.Exec、sql.QueryRow、または sql.Query 関数を使用する必要があります。

この記事では、ビットコイン取引アプリケーションのインストールと登録方法の詳細な紹介について説明します。ビットコイン取引アプリを使用すると、ユーザーはビットコインなどの暗号通貨を管理および取引できます。この記事では、アプリケーションのダウンロード、アカウントの作成、身元確認の実行、最初のデポジットなど、インストールおよび登録プロセスを段階的にガイドします。この記事の目標は、初心者に明確で理解しやすいガイドラインを提供して、ビットコイン取引の世界に簡単に参入できるようにすることです。

JSON データは、gjson ライブラリまたは json.Unmarshal 関数を使用して MySQL データベースに保存できます。 gjson ライブラリは、JSON フィールドを解析するための便利なメソッドを提供します。json.Unmarshal 関数には、JSON データをアンマーシャリングするためのターゲット型ポインターが必要です。どちらの方法でも、SQL ステートメントを準備し、データをデータベースに永続化するために挿入操作を実行する必要があります。

GoWebSocket をデータベースと統合する方法: データベース接続をセットアップする: データベースに接続するには、database/sql パッケージを使用します。 WebSocket メッセージをデータベースに保存する: INSERT ステートメントを使用して、メッセージをデータベースに挿入します。データベースから WebSocket メッセージを取得する: データベースからメッセージを取得するには、SELECT ステートメントを使用します。

OKXとしても知られるOUYIは、世界をリードする暗号通貨取引プラットフォームです。この記事では、OUYIの公式インストールパッケージのダウンロードポータルを提供します。これにより、ユーザーはさまざまなデバイスにOUYIクライアントをインストールすることが容易になります。このインストールパッケージは、Windows、Mac、Android、およびiOSシステムをサポートします。インストールが完了した後、ユーザーはOUYIアカウントに登録またはログインし、暗号通貨の取引を開始し、プラットフォームが提供するその他のサービスを楽しむことができます。
