1. 登陆数据库
sqlplus username/password@hostname:port/service_name
username为你的用户名
password为你的密码
hostname为数据库服务器的主机名或IP地址
port是监听端口,默认为1521
service_name为数据库服务名
如果登陆用户出现 ”ora-01045 :user system lacks create session privilege; logon denied”
说明该用户没有创建session会话的权限
在系统用户下输入下条命令
解决方法:grant create session to UserName;(UserName是登录出错的用户名)
2.以系统管理员身份连接数据库
conn / as sysdba (不需要listener进程)
conn system/admin (只连接本地数据库,不需要listener进程)
conn system/admin@oracle (需要listener进程处于可用状态)
3.启动sqlplus,连接数据库服务器
sqlplus / as sysdba (不需要listener进程)
sqlplus / nolog (不登录到数据库服务器)
4.创建数据表
CREATE TABLE 表名(
字段1 字段1类型 [字段属性] ,
字段2 字段2类型 [字段属性] ,
字段3 字段3类型 [字段属性] ,
......
字段n 字段n类型
) ;
如:
-- 创建了一个名为student的表,包含id、name、age和class四个列。
CREATE TABLE student (
id INT PRIMARY KEY,
name VARCHAR(50),
age INT,
class VARCHAR(50)
);
5.Oracle给表和字段添加注释
(1).添加表注释
COMMENT ON TABLE 表名 IS ‘表注释’;
comment on table student is '学生';
(2). 添加字段注释
COMMENT ON COLUMN 表名.字段名 IS ‘字段注释’;
comment on column student.id is ‘学号’;
comment on column student.name is '姓名';
comment on column student.age is '年龄';
comment on column student.class is '班级';
6.显示当前链接用户
show user
7.创建用户
create user 用户名 identified by 密码;
创建一个名为xzx,密码为123456的用户
create user xzx identified by 123456;
8.删除用户
drop user 用户名
9.切换用户
conn user/password;
10.授予权限
grant create session to xzx; (授予xzx用户创建session的权限,即登陆权限)
grant unlimited tablespace to xzx; (授予xzx用户使用表空间的权限)
grant create table to xzx; (授予创建表的权限)
grant drop any table to xzx; (授予删除表的权限)
grant insert any table to xzx; (授予插入表的权限)
grant update any table to xzx; (授予修改表的权限)
grant create view to xzx; (授予创建视图的权限)
11.查看权限
select * from user_sys_privs; (查看当前用户所有权限)
select * from user_tab_privs; (查看所用用户对表的权限)
12.修改用户密码
alter user 用户名 identified by 密码;
13.插入数据
insert into 表名 (id,name,.......)
values (100,'xxx');
14.查询表数据
select * from 表名;
查询前十行数据:select * from 表名 where rownum<=10;
15.查询用户
select * from all_users where USERNAME='用户名(大写)'; #查询指定用户
select * from all_users; #查看所有用户
select username from dba_users; #查看所有用户
select * from user_users; #查看当前用户
show user; #显示当前用户名
16.删除表的前十行数据
delete from 表名 where rownum<=10;
17.删除表
以下命令都可以删除表
drop table 表名
delete from 表名(后面不跟where语句,则删除表中所有的数据)
truncate table 表名