MySQL增删改查

一、创建使用数据库

1.创建数据库aa

create database aa;

2.使用数据库aa

use  aa;

3.查看所有数据

show databases;

4.创建工作表a1,包含id,name两列,id类型为整型,name为长字符,长度为50

create table a1(
id int,
name varchar(50));

5.插入数据,1号,姓名为你自己的姓名

insert into a1(id,name) values(1,'yy');

7.查看表的属性

desc  a1;

8.查看表格a1的内容

select * from a1;

10.删除编号为1的数据

delete from a1 where id=1;

11.查看数据库aa的所有工作表

show tables from aa;

12.查看当前所使用的数据库

select database(); 

6.查看表中所有的索引

show index from 表名;

二、表的约束

1.含义,什么是约束?
一种限制,用于限制表中的数据,为了保证表中的数据的准确和可靠性
列名 数据类型 约束

语法 : 列名 数据类型 约束
①NOT NULL:非空,用于保证该字段的值不能为空
比如姓名、学号等
id int not null,

default:默认值,用于保证该字段有默认值 比如性别,年龄
age int default 18,

primary key:主键,用于保证该字段的值具有唯一性,并且非空。在一个表里面最多设置一个主键,比如学号、员工编号等
sid int primary key,

unique:唯一,用于保证该字段的值具有唯一性,可以为空 ,比如座位号,身份证号码
seat int unique,

check:[检查约束mysql中不支持]比如年龄、性别
ssex char(5) check(ssex=‘男’ or ssex=‘女’),

foreign key:外键,用于限制两个表的关系,用于保证该字段的值必须来自于主表的关联列的值
在从表添加外键约束,用于引用主表中某列的值。
比如学生表的专业编号,员工表的部编号,员工表的工种编号

auto_increment:可以约束任何一个字段,从1开始递增,插入数据时不能使用在有递增约束的列名

外键语法 :
4.为majorid列加外键约束,约束名为fk_stuinfo_major :

foreign key(当前表中的外键字段)references 外键指向的表(外键指向表的主键)
例:foreign key(id) REFERENCES major(id);

三、什么时候添加约束?

创建表时
1、在每列的最后面添加:

create table T_student(
stud_id  varchar(10) primary key,
mobile  varchar(11) unique
/*添加方法:列名 数据类型 约束类型*/
);

2、在所有列的最下面添加:

create table T_student(
stud_id  varchar(10),
mobile  varchar(11), 
CONSTRAINT pk PRIMARY key(stud_id),
CONSTRAINT uq unique(mobile)
/*添加方法:constraint  约束名 约束类型(列名)*/
);

修改表时

alter table 表名 add 字段名  字段类型   约束; 

3、添加外键约束语法:

alter table 表名 add [constraint 外键名] foreign key(要设置的外键字段名字)  references  指向的主表(指向的字段名字)
例:alter table stuinfo foreign key(couseid) references course(id);

四、修改约束

1、修改列级约束:

alter table 表名 modify  字段名  字段类型   约束;

2、添加约束:

 alter table 表名 add 字段名  字段类型   约束; 

3、在指定字段后面添加约束:

alter table + 表名 + add + 字段名 + 字段类型 +  after  + 要跟随的字段名

4、修改字段名:

 alter table 表明 change 原字段名 新字段名 数据类型

五、删除约束

#1.删除非空约束

ALTER TABLE 表名 MODIFY  列名 类型 NULL;

#2.删除默认约束

ALTER TABLE 表名  MODIFY 列名 类型;

#3.删除主键

ALTER TABLE 表名 DROP PRIMARY KEY;

#4.删除唯—

ALTER TABLE 表名 DROP INDEX 列名;

#5.删除外键

ALTER TABLE 表名 drop foreign key 外键名;

六、表的复制

1.仅辅助表的结构:

create table 新表表名 like 被复制的表的表名;

2.复制表的结构和数据:

create table 新表表名 select * from 被复制的表的表名;

3.只复制部分数据且满足指定条件:

create table 新表名 select 要复制的列的列名(可以是多列) from 被复制表表名 where 要复制的数据
例子:create table a2 select ID,name from a1 where ID=901

仅复制指定列(字段)结构:

create table 新表名 select 要复制列的列名 from 被复制的表 where 0

复制指定列(字段)结构+内容

create table 新表名 select 要复制列的列名 from 被复制的表;
  • 2
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 1
    评论
C# VS2012 86系统 mysql-5.5.27-win32 功能:利用动软代码生成器 从 数据库表或者视图中生成 的三层结构代码 实现 数据增删改查。 如果可以,请下载资源中 修改 的动软代码生成器 C#模板生成 1、由于之前使用 动软生成 java 网页源码,比较成功,此处编写C#程序时沿用,感觉更加适合。 2、直接调用动软的相关dll和生成的三层代码,可以较快的实现增删改查操作。 3、由于一些dll版本的问题及动软生成器自身的一些不完善,产生了一些问题并查找了挺久,所以把可以实现的版本发布出来共享。 前提: 使用的是 mysql数据库时才可能会出现以下问题 问题: 1、MySql.Data.dll 必须是5.6.1以上版本,否则会出现 “向信号量添加给定计数将导致其超出它的最大计数” 的问题。 2、动软代码生成时,必须增加该命名空间 using MySql.Data.MySqlClient; 3、动软代码必须修改 “工具”-“选项”弹出窗 后,点击 ”代码生成设置“-”字段类型映射“-”参数符号“中删除 mysql @,添加mysql ? 4、如果不修改3的设置,在增删改时 参数设置会失败。 5、mysql保存或者修改时,中文会出现乱码,这时必须 在DbHelperMySQL类的 连接字中增加Charset=utf8;即 protected static string connectionString = "Server=localhost;User Id=root;Password=root;Persist Security Info=True;Database=mnzfz;Charset=utf8;"; 6、如果要在局域网中远程访问,请 修改 mysql 权限:grant select,update,insert,delete on *.* to 'root'@'192.168.0.1' identified by "123456";
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

轩尼诗道-

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值