美文网首页
java_sql创建表以及增删改

java_sql创建表以及增删改

作者: 走停2015_iOS开发 | 来源:发表于2021-01-18 13:16 被阅读0次
  1. 建表语句的语法格式:
create table 表名(
字段名1 数据类型,
字段名2 数据类型,
字段名3 数据类型,
)

2.关于MSSQL当中的字段的数据类型 以下只说常见的数据列席

- int  整数型
- bigint 长整型(java中的long)
- float  (float double)
- char 定长字符串 (java中的String)
- varchar 可变字符串(java中的StringBuffer/StringBuilder)
- date 日期类型 (对应java中的java.sql.Date类型)
- BLOB 二进制大对象(存储图片 视频等流媒体信息)(对应java中的object) binary large object
- CLOB 字符大对象(存储大文本 比如可以存储4G的字符串)(对应java中的object) character large object 
- TEXT等于CLOB

3.char和varchar怎么选择

char:  当某个字段数据长度不发生改变的时候 是定长的 类似性别 生日
varchar: 当字段得数据长度不确定 例如简介、姓名

4.BLOB和CLOB

电影表 t_movie
id(int)  name(varchar)  playtime(date/char)  haibao(BLOB)   history(CLOB)(故事情节)
--------------------------------------------------------------
1         蜘蛛侠               
2
3

5.表名在数据库中一般建议以:t_或者tbl_开始。

创建学生表
学号 姓名 性别 班级编号 生日
学号:bigint
姓名:varchar
性别:char
班级标号:int
生日:date/char

create table t_student(
no bigint,
name varchar(255),
sex char(1),
classno varchar(255),
birth char(10)
);
mysql> show tables;
+-----------------------+
| Tables_in_bjpowernode |
+-----------------------+
| dept                  |
| salgrade              |
| t_student             |
| t_user                |
+-----------------------+
mysql> desc t_student;
+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| no      | bigint       | YES  |     | NULL    |       |
| name    | varchar(255) | YES  |     | NULL    |       |
| sex     | char(1)      | YES  |     | NULL    |       |
| classno | varchar(255) | YES  |     | NULL    |       |
| birth   | char(10)     | YES  |     | NULL    |       |
+---------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

6.insert语句插入数据
语法格式:
insert into 表名(字段名1,字段名2,字段名3,.....) values (值1,值2,值3....)
要求:字段数量和值得数量相同 并且数据类型要对应相同

insert into t_student(no,name,sex,classno,birth) values (1,'zhangsan','1','gaosan1ban','1951-10-12');
insert into t_student(no,name,sex,classno,birth) values (2,'lisi','1','gaosan1ban','1951-10-12');
insert into t_student(name) values ('wangwu');
mysql> select *from t_student;
+------+----------+------+------------+------------+
| no   | name     | sex  | classno    | birth      |
+------+----------+------+------------+------------+
|    1 | zhangsan | 1    | gaosan1ban | 1951-10-12 |
| NULL | wangwu   | NULL | NULL       | NULL       |
|    2 | lisi     | 1    | gaosan1ban | 1951-10-12 |
+------+----------+------+------------+------------+
3 rows in set (0.01 sec)

//省略的话 必须和表中字段一一对应
mysql> insert into t_student values (1,'jack','1','gaosan2ban','1921-10-12');
mysql> select *from t_student;
+------+----------+------+------------+------------+
| no   | name     | sex  | classno    | birth      |
+------+----------+------+------------+------------+
| NULL | zhangsan | 1    | NULL       | NULL       |
|    1 | jack     | 1    | gaosan2ban | 1921-10-12 |
+------+----------+------+------------+------------+
2 rows in set (0.00 sec)

//一次插入多条数据
insert into t_student(no,name,sex,classno,birth) values (3,'rose','1','gaosi2ban','1952-12-14'),(4,'laotie','1','gaosi2ban','1952-12-14');
mysql> select *from t_student;
+------+----------+------+------------+------------+
| no   | name     | sex  | classno    | birth      |
+------+----------+------+------------+------------+
| NULL | zhangsan | 1    | NULL       | NULL       |
|    1 | jack     | 1    | gaosan2ban | 1921-10-12 |
|    3 | rose     | 1    | gaosi2ban  | 1952-12-14 |
|    4 | laotie   | 1    | gaosi2ban  | 1952-12-14 |
+------+----------+------+------------+------------+

6.删除表 default 指定默认值

drop table if exists t_student;
create table t_student(
no bigint,
name varchar(255),
sex char(1) default 1,
classno varchar(255),
birth char(10)
);
mysql> desc t_student;
+---------+--------------+------+-----+---------+-------+
| Field   | Type         | Null | Key | Default | Extra |
+---------+--------------+------+-----+---------+-------+
| no      | bigint       | YES  |     | NULL    |       |
| name    | varchar(255) | YES  |     | NULL    |       |
| sex     | char(1)      | YES  |     | 1       |       |
| classno | varchar(255) | YES  |     | NULL    |       |
| birth   | char(10)     | YES  |     | NULL    |       |
+---------+--------------+------+-----+---------+-------+
5 rows in set (0.01 sec)

mysql> insert into t_student(name) values ('zhangsan');
mysql> select *from t_student;
+------+----------+------+---------+-------+
| no   | name     | sex  | classno | birth |
+------+----------+------+---------+-------+
| NULL | zhangsan | 1    | NULL    | NULL  |
+------+----------+------+---------+-----

7.表的复制(创建表的时候可以复制别的表)

mysql> create table emp1 as select *from t_user;
mysql> select *from emp1;
+----+-----------+-----+--------+---------+------+--------+------+------+------+
| id | name      | age | gender | content | job  | deptno | sal  | mgr  | num  |
+----+-----------+-----+--------+---------+------+--------+------+------+------+
|  2 | HanMeimei |  17 |      0 | NULL    | AAAA |      2 | 80   |  100 |  100 |
|  3 | Lucy      |  17 |      0 | NULL    | BBB  |      5 | 1250 |  100 |  101 |
|  5 | WeiHua    |  32 |      0 | NULL    | BBB  |      5 | 4321 |  100 |  103 |
|  6 | ZhangWei  |  25 |      1 | NULL    | AAAA |      4 | 1002 |  104 |  104 |
|  7 | Ann       |  36 |      0 | NULL    | DDDD |      5 | 2131 |  104 |  105 |
|  8 | Lisa      |  19 |      0 | ceshi   | DDDD |      1 | 4345 |  105 |  106 |
|  9 | ZWei      |  18 |      1 | NULL    | CCC  |      2 | 1233 |  105 |  107 |
| 10 | Ka_te     |  17 |      1 | NULL    | FFF  |      1 | 2433 |  110 |  108 |
+----+-----------+-----+--------+---------+------+--------+------+------+------+
8 rows in set (0.00 sec)

mysql> create table emp2 as select  name,age from t_user;
mysql> select *from emp2;
mysql> select *from emp2;
+-----------+-----+
| name      | age |
+-----------+-----+
| Ann       |  36 |
| HanMeimei |  17 |
| Ka_te     |  17 |
| Lisa      |  19 |
| Lucy      |  17 |
| WeiHua    |  32 |
| ZhangWei  |  25 |
| ZWei      |  18 |
+-----------+-----+
8 rows in set (0.00 sec)

8.将查询结果插入到表中

mysql> create table dept1 as select *from dept;
mysql> insert into dept1 select *from dept;
mysql> select *from dept1;
+-----------+--------+----------+
| dname     | deptno | location |
+-----------+--------+----------+
| 测试部    |      2 | 青岛     |
| 开发部    |      3 | 日本     |
| 市场部    |      1 | 内蒙     |
| 设计部    |      4 | 湖南     |
| 采购部    |      5 | 江西     |
| 测试部    |      2 | 青岛     |
| 开发部    |      3 | 日本     |
| 市场部    |      1 | 内蒙     |
| 设计部    |      4 | 湖南     |
| 采购部    |      5 | 江西     |
+-----------+--------+----------+
10 rows in set (0.00 sec)

9.修改数据
语法格式
update 表名 set 字段名1 = 值1 ,字段名2=值2....where 条件
注意没有条件整张表数据全部更新

将部门1的location修改为上海 将部门名称修改为人事部
mysql> update dept1 set location = '上海', dname = '人事部' where deptno = 1;
mysql> select *from dept1;
+-----------+--------+----------+
| dname     | deptno | location |
+-----------+--------+----------+
| 测试部    |      2 | 青岛     |
| 开发部    |      3 | 日本     |
| 人事部    |      1 | 上海     |
| 设计部    |      4 | 湖南     |
| 采购部    |      5 | 江西     |
| 测试部    |      2 | 青岛     |
| 开发部    |      3 | 日本     |
| 人事部    |      1 | 上海     |
| 设计部    |      4 | 湖南     |
| 采购部    |      5 | 江西     |
+-----------+--------+----------+
10 rows in set (0.00 sec)

10.删除数据
语法格式
delete from 表名 where 条件
注意没有条件 删除全部
特别:删除慢 仅仅删除数据 不删除空间

//删除部门5的部门数据、
delete from dept1 where deptno = 5;
mysql> select *from dept1;
+-----------+--------+----------+
| dname     | deptno | location |
+-----------+--------+----------+
| 测试部    |      2 | 青岛     |
| 开发部    |      3 | 日本     |
| 人事部    |      1 | 上海     |
| 设计部    |      4 | 湖南     |
| 测试部    |      2 | 青岛     |
| 开发部    |      3 | 日本     |
| 人事部    |      1 | 上海     |
| 设计部    |      4 | 湖南     |
+-----------+--------+----------+

//怎么删除大表(重点)(截断)
//表被截断 不可回滚 不可恢复
truncate table emp1;
mysql> select *from emp1;
Empty set (0.01 sec)
  • DQL(select)
  • DML(insert delete update)(数据)
  • DDL(create drop alter)(表)

相关文章

  • java_sql创建表以及增删改

    建表语句的语法格式: 2.关于MSSQL当中的字段的数据类型 以下只说常见的数据列席 3.char和varchar...

  • 2018-06-23 (数据库)

    /*表的增删改查增创建删除删除整张表改改变表名改变列名改变列类型查查询表结构查询表信息表数据的增删改查增插入指定列...

  • IOS FMDB的简单实用

    对数据库简单的操作: 增删改查 1、确定存储的路径,并创建文件 打开文件,并创建表 3.增: 往表中添加数据 ...

  • SQL查询结构总结

    SQL 增删改查 对数据库有修改的操作是:增删改 增 insert into 表名 values(); 删 del...

  • Mac mysql 使用教程

    mysql 安装成功,接下来就详细的说说使用教程,下面通过创建库,创建表,以及表中数据的增、查、改、删来详细说明。...

  • 2019-01-26

    对于之前的想法,进行创建table,但是还没有想到多个表之间的关联,目前将增删改查中的增功能正在完善,借鉴其他的后...

  • mysql数据库的基本操作

    一、基本增删改查二、创建索引的几种方式三、单表查询四、连表查询 一、基本增删改查 1.数据库的增删改查 show ...

  • 数据库表的增删改查

    crud 对表的增删改查 增insert into1.完全插入:例如:insert into 表名 values(...

  • 6.表和数据的管理

    6.1 创建表 6.2 表删除 语法:DROP TABLE 表名 6.3 表的修改 6.4 数据的增删改 6.4...

  • 增删改

    对于表中的操作,就是增删改查,查内容较多,这里先说增删改。 1.增(insert或者load) 即插入数据,多行插...

网友评论

      本文标题:java_sql创建表以及增删改

      本文链接:https://www.haomeiwen.com/subject/osutzktx.html