二、操作表
2.1 数据类型表是存储数据最基本的数据单位他是二位结构 行和列 行也叫记录 列也叫作域 或者 字段
约定每一张表每一列的数据具有相同的数据类型列名唯一每一行数据是唯一的 (唯一性)
字符型 char(n) n最大值为2000nchar(n) 最大值为1000
varchar2(n) 4000nvarchar2(n) 2000
数值型 number(p,s) p有效数字 s 小数点后面位数float(n) 二进制数字日期型datetimestamp 精确到s
其他类型blob 4g 二进制clob 4g 字符串
2.2管理表
创建表create table table_name(colunm_name datatype,)实例:创建用户信息表create table userinfo(id number(6,0),username varchar2(20),userpwd varchar2(2 0),email varchar2(30),regdate date,);desc userinfo
修改表名rename table_name to new_table_name;
实例:rename userinfo to new_userinfo;
删除表truncate table table_name; 删除表中全部数据
实例:truncate table userinfo
drop table table_name 删除表及表中的数据
修改表(结构)
添加字段alter table table_nameadd column_name datatype;
实例:alter table table_nameadd remark varchar2(500);
更改字段的数据类型
alter table table_namemodify column_name datatype;
实例:alter table table_namemodify remarks varchar2(400);
alter table table_namemodify userpwd number(6,0)
删除字段
alter table table_namedrop column column_name(字段名)
实例:alter table userinfodrop column remarks;
删除空白行
delete from userinfo where id is null;
修改字段名
alter table table_namerename column column_name tonew_column_name;
实例:alter table userinforename column email to new_email;
2.3操作表中的数据
添加数据insert into table_name(column1,column2,........)values(value1,value2,.......)
实例:给表中所有字段添加数据insert into userinfovalues(1,'hanxubein','123','xx',sysdate);
insert into userinfo(id,username)values(1,'hanxubein');
查询:select id,username from userinfo;
在创建表的时候给一个字段默认添加值create table userinfo1(id number(6,0),regdate date default sysdate);
修改表数据
alter table userinfomodify email default '无';
复制表中的数据
一,在创建表的时候复制create table table_newASselect column1,......|* from table_old
复制表中的全部数据create table userinfo_newasselect * from userinfo;
复制表中的部分字段create table userin_new1asselect id,username from userinfo
如果要只复制表结构而不对表数据进行复制可以写一个永远也满足不了的条件;例如:CREATE TABLE TABLE_NEW AS SELECT * FROM TABLE_NAME WHERE 1=2;
二,在添加表的时候复制insert into table_new[(column1,.........)]select column1,.......|* from table_old;
实例:添加表示复制全部数据insert into userinfo_newselect * from userinfo实例二:添加表时复制部分字段insert into userinfo_new(id,username)select id,username from userinfo;
修改数据
update语句update table_nameset columns=value1,.......[where conditions] //不加这个就是修改的全部数据
实例:无条件更新update userinfoset userpwd='111111';//userinfo表中的所有密码字段全部变成111111
update userinfoset userpwd='111',email='111@126.com';
实例:由条件的更新 加上where语句update userinfoset userpwd='123456'where username='xxx';
删除数据
delete语句delete from table_name[where conditions]
实例:delete from userinfowhere username='yyy';
回顾之前的操作:
truncate table table_name; 删除表中全部数据实例:truncate table userinfodrop table table_name 删除表及表中的数据