mysql数据库入门第一步之创建表

创建数据库

右键-新建数据库

输入库名、选择字符集和排序规则,点确定

创建数据库成功

新建表

my-表-右键-新建表

如上图所示,在第一个标签页“栏位”中

名:字段的名字

类型:字段的类型,有几十种,常用的有以下几种

  • char,可以存定长的字符串
  • varchar,可以存变长的字符串(定长和变长的区别在长度中介绍)
  • int,可以存-2^31 (-2,147,483,648) 到 2^31 - 1 (2,147,483,647) 之间的数字
  • datetime,可以存日期类型的数据

长度:数据存的最大长度,对于不同的字段类型,长度表示的意义也不一样

  • 字段类型为char时,该长度表示存的最大长度,例如为100时,存的数据就算不超过100位,也会占用100位的存储空间
  • 字段类型为varchar时,该长度表示存的最大长度,例如为100时,数据占用的空间会根据存的数据的长度来分配,数据越短占用的空间越少
  • 字段类型为int时,该长度无意义,不管是输入0还是100都一样,因为int类型已经确定了范围了
  • 类型为datetime时,该长度表示秒后面的小数点位数,为0时可以保存为2021-05-27 00:00:00,为3时可以保存为2021-05-27 16:48:41.000

小数点:默认就行,不用填,没什么用

不是null:默认为否,就是插入数据时可以不填,默认会插入null,表示什么也没有,连空字符串都不是,如果勾上了,查询数据时就必须填入该字段,不然会报错

不是null后面还有一个空白列,点击之后会出现一把钥匙

这个是用来设置主键的,把一个字段设置为主键相当于这个字段是这个表中的唯一数据,就是不重复的数据,一般会用一个无意义的字段表示,如id

下方区域:选择不同的字段类型会加载不同的内容,这里简单说几种

int:主要关注自动递增,如果勾上了,则插入数据时不用插入id字段,数据库会每次加1的插入到表中,其他选项不用理会

varchar:默认中有三个选项,当插入数据时不插入该字段时,数据库会根据这项自动插入数据:选择第一个时可以编辑这个输入框,插入自定义的数据;选择第二个时会插入null(非字符串null,就是表示什么都没);选择第三个时会插入空字符串。其他的选项一般不用管,保存表时会字段填入默认值。

不管是什么字段类型,下面都会有注释输入框,就是填入该字段代表的意义,这个虽然可以不填,但是要养成一个良好的习惯就必须填。这里我要说一下,一个字段要选择什么样的类型没什么规定,主要看工作中公司怎么要求的,例如A公司要求年龄用int,性别用char,时间用datetime,B公司要求所有字段都用varchar。我在接下来的教程里会把字段类型全部设置成varchar,这点不用纠结为啥了。

接下来,我建一个用户表,搞一些用户的常用字段,字段名的定义一般用英文或者拼音全拼,可以用下划线分割,怎么定义也得看公司怎么要求的,有些公司说用拼音不专业,就非得用英文,这就很扯蛋了,只要通俗易懂就行了,用拼音需要避免用首字母,例如用户名称搞了个yhmc,鬼知道这个字段是啥意思,只要不大小写混用,不英文拼音混用就行了。

注意我以后所说的“保存”都不是点界面能上的保存按钮,都是用快捷键Ctrl+S操作的,这个与直接点击保存按钮效果是相同的,只是更方便

如上图,保存,然后弹出一个输入表名的框,输入完点确定就行了,如果点确定报错,检查下是不是类型输入错了或者别的原因,有时候建表时明明什么都对的保存时也会报错,这就是Navicat的bug了,关掉重新建表或者先建一个字段的表保存完再修改表结构加字段也行。

你可以双击打开表之后手动新增、修改、删除数据

以上菜单里的选项建议都用一下,试试功能,下一节讲表的增删改查。

到此这篇关于mysql数据库入门第一步之创建表的文章就介绍到这了,更多相关mysql数据库创建表内容请搜索我们以前的文章或继续浏览下面的相关文章希望大家以后多多支持我们!

(0)

相关推荐

  • Hibernate4在MySQL5.1以上版本创建表出错 type=InnDB

    在搭建springmvc框架时,底层使用hibernate4.1.8,数据库使用mysql5.1,使用hibernate自动生成数据库表时,hibernate方言使用org.hibernate.dialect.MySQLInnoDBDialect,自动生成表时会出现错误,如下: 复制代码 代码如下: [13-04-13 19:11:37.190] {resin-60} You have an error in your SQL syntax; check the manual that corr

  • golang实现mysql数据库事务的提交与回滚

    MySQL 事务主要用于处理操作量大,复杂度高的数据.在 MySQL 中只有使用了 Innodb 数据库引擎的数据库或表才支持事务. 事务用来管理 insert,update,delete 语句,事务处理可以用来维护数据库的完整性,保证成批的 SQL 语句要么全部执行,要么全部不执行. 一般来说,事务是必须满足4个条件(ACID)::原子性(Atomicity,或称不可分割性).一致性(Consistency).隔离性(Isolation,又称独立性).持久性(Durability). 本文主要

  • 详解在MySQL中创建表的教程

    创建表的命令要求: 表的名称 表字段名称 每个字段的定义 语法: 下面是通用的SQL语法来创建一个MySQL表: CREATE TABLE table_name (column_name column_type); 现在,我们将创建下面的教程数据库表中. tutorials_tbl( tutorial_id INT NOT NULL AUTO_INCREMENT, tutorial_title VARCHAR(100) NOT NULL, tutorial_author VARCHAR(40)

  • MYSQL建立外键失败几种情况记录Can't create table不能创建表

    像这种不能创建一个.frm 文件的报错好像暗示着操作系统的文件的权限错误或者其它原因,但实际上,这些都不是的,事实上,这个mysql报错已经被报告是一个mysql本身的bug并出现在mysql 开发者列表当中很多年了,然而这似乎又是一种误导. 在很多实例中,这种错误的发生都是因为mysql一直以来都不能很好的支持的关系的问题, 更不幸的是它也并没有指明到底是哪一个问题会导致上面那种错误,下面我把导致这个可怕 的150错误的常见原因列出来了,并且我以可能性的大小作了排序,已知的原因: 1. 两个字

  • mysql创建表的sql语句详细总结

    mysql创建表的sql语句 mysql建表常用sql语句: 连接:mysql -h主机地址 -u用户名 -p用户密码 (注:u与root可以不用加空格,其它也一样) 断开:exit (回车) 创建授权:grant select on 数据库.* to 用户名@登录主机 identified by \"密码\" 修改密码:mysqladmin -u用户名 -p旧密码 password 新密码 删除授权: revoke select,insert,update,delete om *.*

  • MySQL安装后默认自带数据库的作用详解

    大家在学习MySQL时,安装后都会发现里边已经自带了几个默认的数据库,我装的MySQL5.5里边自带六个数据库 网上查了一些资料对这几个数据库的功能做一下学习. 1.information_schema 这个库中有很多的表 information_schema数据库表说明: SCHEMATA表:提供了当前mysql实例中所有数据库的信息.是show databases的结果取之此表. TABLES表:提供了关于数据库中的表的信息(包括视图).详细表述了某个表属于哪个schema,表类型,表引擎,

  • MySQL动态创建表,数据分表的存储过程

    复制代码 代码如下: BEGIN DECLARE `@i` int(11); DECLARE `@siteCount` int(11); DECLARE `@sqlstr` VARCHAR(2560); DECLARE `@sqlinsert` VARCHAR(2560); //以上声明变量 SELECT COUNT(0) into `@siteCount` FROM tbl_base_site; //计算表tbl_base_site的记录总条数 set `@i`=1; WHILE (`@i`-

  • django将图片保存到mysql数据库并展示在前端页面的实现

    小编使用python中的django框架来完成! 1,首先用pycharm创建django项目并配置相关环境 这里小编默认项目都会创建 settings.py中要修改的两处配置 DATABASES = { 'default': { # 'ENGINE': 'django.db.backends.sqlite3', # 'NAME': os.path.join(BASE_DIR, 'db.sqlite3'), 'ENGINE': 'django.db.backends.mysql', 'NAME'

  • mysql创建表添加字段注释的实现方法

    直接po代码和案例 #创建表的时候写注释 CREATE TABLE userinfo( id INT COMMENT '编号', uname VARCHAR(40) COMMENT '用户名', address VARCHAR(120) COMMENT '家庭住址', hobby VARCHAR(200) COMMENT '爱好' )COMMENT = '用户信息表'; #修改表的注释 ALTER TABLE userinfo COMMENT '用户信息资料表'; #修改字段的注释,注意:字段名

  • IDEA连接mysql数据库报错的解决方法

    IDEA连接mysql数据库出现Server returns invalid timezone. Go to 'Advanced' tab and set 'serverTimezone' property manually. 报错意思是服务器返回了无效时区.也就是我们的数据库返回了无效的时区. 如图所示: 报错中显示让我们去Advanced下的serverTimezone看看. 那我们就打开Advanced看看 可以看到这里显示的时域为空的,我们填入Asia/Shanghai 搞定.注意这里可

  • MySQL之存储过程按月创建表的方法步骤

    具体不多说,直接上代码.欢迎一起交流和学习. 创建一个按月创建表的存储过程,SQL语句如下: DELIMITER // DROP PROCEDURE IF EXISTS create_table_by_month // CREATE PROCEDURE `create_table_by_month`() BEGIN #--提前申明变量,后面会用到 DECLARE nextMonth varchar(20); DECLARE nextTABLE varchar(20); DECLARE csql

  • python3 实现mysql数据库连接池的示例代码

    dbutils封装文件传送门 DBUtils是一套Python数据库连接池包,并允许对非线程安全的数据库接口进行线程安全包装.DBUtils来自Webware for Python. DBUtils提供两种外部接口: PersistentDB :提供线程专用的数据库连接,并自动管理连接. PooledDB :提供线程间可共享的数据库连接,并自动管理连接. 需要库 1.DBUtils pip install DBUtils 2.pymysql pip install pymysql/MySQLdb

随机推荐