造数据、添加字段、时间格式、索引

一、以下用法适用于oracle

  sys_guid():随机生成一个全球唯一标识符

  sysdate:当前时间;例如:select * from table where date>sysdate;

  trunc(sysdate):截取系统时间,参考:https://blog.csdn.net/bestcxx/article/details/51646017

  sequence_name.nextval :自增长的字段,需要开发提供sequence_name

  oracle 中的 || 起连接作用:'aaa'|| ','|| 'bbb'|| ','|| 'ccc'   结果是:aaa,bbb,ccc

  可以通过python脚本造数据,因为变量相对容易设置一些

二、python连接Oracle造数据

  示例是oracle,mysql同理只是引用的包不同;

  guid在python中通过引用uuid包来生成,用法:guid=uuid.uuid1()

import cx_Oracle
host=''
port=''
side=''
user=''
password=''
desc='{}:{}/{}'.format(host,port,side)
db=cx_Oracle.connect(user,password,desc)
sql=''

try:
    cr=db.cursor()  #创建游标
    cr.execute(sql)
    db.commit()
except Exception as e:
    print('connect error:',e)
finally:
    db.close

三、oracle直接造数据

单表插入

declare 
i integer;--integer是pl/sql支持的类型。可以用oracle中的number
begin
for j in 1..2 loop
insert into 表名 (字段名) values (值);
end loop;

end;

多表插入(适用于有关联的2个表)

declare 
i integer;
j integer;
begin
for i in 1..2 loop
insert into 表名1 (字段名) values (值);

for j in 1..2 loop
insert into 表名2 (字段名) values (值);
end loop;

end loop;

end;

四、时间格式

sql 中格式化时间
Y是指年 ,区分大小写:大写是    2020;   小写是  20
m是指月,区分大小写:大写是  November;小写是  11
d是指日,区分大小写:大写是   16th;    小写是  16
H是指时,区分大小写:大写是  16;     小写是  04
i是指分钟,不区分大小写
S是指秒,不区分大小写

mysql 默认时间格式yyyy-MM-dd HH:mm:ss 在sql中使用%Y-%m-%d %H:%i:%S 格式
select DATE_FORMAT(now(), ‘%Y-%m-%d %H:%i:%S’) as newTime

参考来源:https://blog.csdn.net/m0_37856386/article/details/109724266

五、ALTER TABLE ——索引

mysql,(PRIMARY—主键索引、UNIQUE—唯一索引、INDEX—索引)在B树中存储。

-- 添加索引
ALTER TABLE table_name ADD INDEX PRIMARY KEY( `func`), ADD INDEX idx2 ( `func`,`gene`), ADD INDEX UNIQUE ( `genedetail`);
-- 撤销索引
ALTER TABLE table_name DROP INDEX index_name

1、数据库中创建索引的优点

  a、创建唯一性索引,保证数据库表中每一行数据的唯一性

  b、加快数据的检索速度,这也是创建索引的最主要的原因。

  c、减少磁盘IO(向字典一样可以直接定位)

  d、通过使用索引,可以在查询的过程中,使用优化隐藏器,提高系统的性能。

  e、加速表和表之间的连接,特别是在实现数据的参考完整性方面特别有意义。

2、数据库中创建索引的缺点

  a、创建索引和维护索引要耗费时间,这种时间随着数据量的增加而增加。

  b、索引需要占用物理空间,特别是聚集索引,需要较大的空间。

  c、当对表中的数据进行增加、删除和修改的时候,索引也要动态的维护,这样就降低了数据的维护性

六、ALTER TABLE ——字段修改

-- 增加字段
ALTER TABLE table_name  ADD column_name datatype;
-- 删除字段
ALTER TABLE table_name  DROP COLUMN column_name;
-- 修改字段
ALTER TABLE table_name  MODIFY COLUMN column_name datatype;

 

posted @ 2019-05-05 21:56  whitewall  阅读(198)  评论(0)    收藏  举报