建立了两个 数据库 wilson test
通常使用SYS用户以SYSDBA的身份来操作实例。
启动数据库实例的命令为startup,启动过程分三步
启动实例,分配内存启动后台进程等。
打开数据库的控制文件,并把实例和数据库关联起。
打开数据库文件,可以访问数据了,也就是启动过程中提示的“数据库已经打开”。
关闭数据库的命令是shutdown,常用shutdownimmediate
必须先启动Windows服务,然后才能对实例进行启停管理。
Oracle服务器端要想提供网络服务,必须配置和启动监听。
Oracle提供了两个图形化的网络配置工具
Net Configuration Assistant(简称NetCA)
Net Manager(简称NetMgr)
LSNRCTL是监听器的管理工具。
最常用的三个命令
lsnrctl start(启动监听)
lsnrctl stop(停止监听)
lsnrctl status(查看当前监听的运行情况)
Select查询语句
DML语句(数据操作语言)
Insert / Update / Delete / Merge
DDL语句(数据定义语言)
Create / Alter / Drop / Truncate
DCL语句(数据控制语言)
Grant / Revoke
事务控制语句
Commit / Rollback / Savepoint
NULL:表示未定义的,未知的。空值不等于零或空格。任意类型都可以支持空值。
空值(NULL)在算术表达式中的使用
包括空值的任何算术表达式都等于空
包括空值的连接表达式等于与空字符串连接,也就是原来的字符串
---------备注-------------------------------------------------------------------------------------
/nolog是不登陆到数据库服务器的意思
如果没有/nolog参数,sqlplus会提示你输入用户名和密码
如果在sql*plus环境中使用shutdown命令关闭了数据库,
现在要启动数据库的话,必须先用不登陆到数据库服务器的方式进入sqlplus环境,
再用startup命令启动数据库。因为数据库没有启动的话,不能登陆数据库,也无法验证用户名和密码。
---------------------------------------------------------------------------------------------------
已经有的用户:
SYS
SYSTEM
DBSNMP
SYSMAN
Oracle服务器端要想提供网络服务,必须配置和启动监听。
Oracle提供了两个图形化的网络配置工具
Net ConfigurationAssistant(简称NetCA)
Net Manager(简称NetMgr)
Sqlplus
Sqlplusw
iSqlplus
SQL语句与SQL*PLUS/iSQL*PLUS命令有以下主要区别:
SQL语句是开发语言,而SQL*PLUS/iSQL*PLUS是Oracle使用的工具。
SQL语句直接访问Oracle数据库,并返回结果;而SQL*PLUS/iSQL*PLUS命令是在返回结果上进行处理,如显示格式等。
SQL*PLUS/iSQL*PLUS命令只是使每个客户端环境有所不同,不会直接访问数据库。
SQL语句不可以缩写,而SQL*PLUS/iSQL*PLUS命令可以缩写。
SQL*PLUS/iSQL*PLUS命令结尾可以不加分号(;) 。
DESC[RIBE]命令:显示表结构
DESC employees
SET命令:设置环境变量
语法:SET 系统变量 值
SET HEADING {ON|OFF} :控制是否显示列标题。默认是ON
设置列的显示长度:
对于字符字段,使用colHIREDATE format a100;
对于数字字段,使用colDEPTNO format 999; 表示显示3位数字
Sql*plus的默认显示
Date和character 型数据左对齐
Numeric 型数据右对齐
列标题默认显示为大写
iSql*plus的默认显示
列标题缺省居中对齐
列标题默认显示为大写
创建用户语法
CREATE USER user
IDENTIFIED BY password;
执行该语句的用户需要有“创建用户”的权限,一般为系统的DBA用户。
用户如果想登陆,至少需要有“CREATESESSION”的权限
GRANT CREATE SESSION TO test;
赋予test用户的创建表的权限。
Conn system/oracle;
GRANT CREATE TABLE TO test;
用户空间分配和管理:
给用户分配表空间的配额;
给用户指定一个默认的表空间,如果没有特殊指定,则对象都是在该用户默认表空间中创建的。
ALTER USER test
DEFAULT TABLESPACE example;
给test分配配额。
ALTER USER test
QUOTA 10m ON example;
以test用户身份执行
CREATE TABLE emp1(id NUMBER,last_name VARCHAR2(20),salaryNUMBER);
oracle中convert
在oracle中,convert函数是用来转字符集转换的。
语法:
CONVERT( char, dest_char_set[ ,source_char_set] );
char的参数是要转换的值。它可以是任何的数据类型CHAR , VARCHAR2 , NCHAR , NVARCHAR2 , CLOB或NCLOB 。
dest_char_set参数是char转换的字符集的名称。
source_char_set参数是char是存储在数据库中的字符集,其中的名称。.默认值是数据库的字符集。
DESC[RIBE]命令:显示表结构
DESC employees
SET命令:设置环境变量
语法:SET 系统变量 值
SET HEADING {ON|OFF} :控制是否显示列标题。默认是ON
设置列的显示长度:
对于字符字段,使用colHIREDATE format a100;
对于数字字段,使用colDEPTNO format 999; 表示显示3位数字
Unix 中换行符 ASCII 10
Windows中回车符 ASCII13 + 换行符 ASCII 10
CONSTRAINT 取别名
CREATE TABLE nameber(
name VARCHAR2(50) ,
CONSTRAINT pk_midPRIMARY KEY(name)
);