sql增加字段

MySQL中数据表的基本操纵

寵の児 提交于 2019-12-19 09:14:01
本文基于对国家863中部软件孵化器编著的《MySQL从入门到精通》一书的操作实践。 一、创建数据表 数据表属于数据库,在创建数据表之前,应该使用语句 USE 数据库名 指定操作是在那个数据库中进行。 创建数据表的语句为CREATE TABLE ,语法规则如下: 1 CREATE TABLE 表名 2 ( //为括号 3 字段名1 数据类型 [列级别约束条件] [默认值], 4 字段名1 数据类型 [列级别约束条件] [默认值], 5 ...... 6 [表级约束条件] 7 ); //要有分号 使用CREATE TABLE 创建表时,要注意一下几点: (1)要创建表名,不区分大小写,不能使用SQL语言中的关键字,如DROP、ALTER等; (2)数据表中每一个字段的名称和数据类型,如果要创建多个,要用逗号隔开。 1、主键约束 主键,又称主码,是表中一列或者多列的组合。主键约束(Primary Key Constraint)要求主键列的数据唯一,并且不允许为空。主键能够唯一标识表中的一条记录,可以结合外键来定义不同数据表之间的关系,并且可以加快数据库查询的速度。主键和记录之间的关系如同身份证和人之间的关系,它们之间一一对应。主键分为两种类型:单字段主键和多字段联合主键。 (1)单字段主键 a)在定义列的同时指定主键,语法规则如下: 字段名 数据类型 PRIMARY KEY [默认值]

记录一次无厘头的粗心失误——java后台报错:Unknown column 'xxx' in 'field list'

岁酱吖の 提交于 2019-12-18 04:20:24
原因: sql文件马虎,直接用错了仓库。用的不是程序调用的仓库。而自己pojo和mapper还是采用Mybatis的逆向工程生成的。当时搞得很无厘头。 解决方案: sql用到程序指定的仓库就行啦。 总结: 因为自己找这个原因找的也很久,所以自己想总结一下,导致Unknown column 'xxx' in 'field list'的日常操作有哪些? 1,表的字段没有没有匹配,特别是数据库中属性为not null的字段,看看自己有没有增加。 2,查看插入时,赋值是否加了单引号:values(“'”+变量+“'”,'“'”+变量+“'”)。 3,写好的SQL可以先尝试去数据库中先运行一下。 4,核对字段是否一致时,最靠谱的方式就是直接看创建表的语句,能避免由于特殊字符引起。 来源: https://www.cnblogs.com/tujietg/p/10750328.html

MySQL入门

大城市里の小女人 提交于 2019-12-17 22:37:23
目录 1. 数据库的介绍 2. 数据库的类型 关系型数据库核心元素 3. MySQL的基本介绍 4. 常用入门的操作命令 SQL DQL数据查询语言 DML DDL 5 DDL 创建表 显示建表语句 6 数据类型 数值类型(常用) 小数类型 字符串 日期时间类型 7 数据库设计 约束规则 实体 8 三范式 9 E-R模型 10 备份和恢复 备份 恢复 11 消除重复行 12 where条件的运算符进阶 空判断 运算符优先级 13 连接查询[连表查询、多表查询] 内连接查询(inner join) 右连接查询(right join) 左连接查询(left join) 多表关联 14 单表的连表查询[自关联查询] 15 子查询 主查询 主查询和子查询的关系 16 having 17 select查询语句的完整格式 18 Python操作mysql 安装pymysql模块 使用pymysql模块操作数据库 1. 数据库的介绍 数据库就是一个以某种有组织的方式存储的数据集合。 简单的说,数据库(database)就是一个存放数据的仓库,这个仓库是按照一定的数据结构(数据结构是指数据的组织形式或数据之间的联系)来组织、存储的,我们可以通过数据提供的多种方法来管理数据库里的数据。 好处 : 持久化存储 读写速度极高 保证数据的有效性 对程序支持性非常好,容易扩展 我们可以理解为

数据库(表结构)设计技巧及注意事项

南笙酒味 提交于 2019-12-13 23:03:16
 当您在决定 开发 一个 数据库 管理项目时,最先着手的工作就应是数据库表结构的设计了。可以这么说,表结构的设计是开发数据库管理项目的基石,一个糟糕的表结构设计,可能会严重延误您的项目开发周期,使您大量的劳动时间为此付之东流。表结构设计是数据库逻辑设计的重要组成部分,直接影响到数据库的性能,所以小编在本文对数据库(表结构)设计技巧及注意事项做一个讲解!   1.表名一般以【模块名称_具体表名】来实现,同一个模块的前缀是一样的。( Oracle 大小写敏感,在SQL中可以不用"_",因为可以用大小写一起的写法。这也是可以的)   2.表名称不应该取得太长(一般不超过三个英文单词,不推荐使用中文拼音,总的长度不要超过30个字符)。表名使用英文的原因,有些项目有英文版的需要,或者这个项目是给外国做的时候,使用英文是基本的要求,应该说这是一个习惯问题,多学一点英文也不是坏事   3.不使用tab或tb作为表前缀(本来就是一个表,为什么还要说明)。   4.一些作为多对多连接的表,可以使用两个表的前缀作为表名:如:用户登录表User_Login,用户分组表User_GroupInfo,这两个表建立多对多关系的表名为:User_Group_Relation(关系统一用Relation)。注意一点,主键在做其他表的外键时,或者在被其他表引用时,字段说明和字段名尽量保持一致,比如发帖表BBS

最全MySQL面试题和答案

北慕城南 提交于 2019-12-13 02:39:00
Mysql 的存储引擎,myisam和innodb的区别。 答: 1.MyISAM 是非事务的存储引擎,适合用于频繁查询的应用。表锁,不会出现死锁,适合小数据,小并发。 2.innodb是支持事务的存储引擎,合于插入和更新操作比较多的应用,设计合理的话是行锁(最大区别就在锁的级别上),适合大数据,大并发。 数据表类型有哪些 答:MyISAM、InnoDB、HEAP、BOB,ARCHIVE,CSV等。 MyISAM:成熟、稳定、易于管理,快速读取。一些功能不支持(事务等),表级锁。 InnoDB:支持事务、外键等特性、数据行锁定。空间占用大,不支持全文索引等。 MySQL数据库作发布系统的存储,一天五万条以上的增量,预计运维三年,怎么优化? a. 设计良好的数据库结构,允许部分数据冗余,尽量避免join查询,提高效率。 b. 选择合适的表字段数据类型和存储引擎,适当的添加索引。 c. mysql库主从读写分离。 d. 找规律分表,减少单表中的数据量提高查询速度。 e。添加缓存机制,比如memcached,apc等。 f. 不经常改动的页面,生成静态页面。 g. 书写高效率的SQL。比如 SELECT * FROM TABEL 改为 SELECT field_1, field_2, field_3 FROM TABLE. 对于大流量的网站,您采用什么样的方法来解决各页面访问量统计问题?

SQL server的字段类型详解

泪湿孤枕 提交于 2019-12-12 18:02:34
SQL server的字段类型详解 bit 整型 bit数据类型是整型,其值只能是0、1或空值。这种数据类型用于存储只有两种可能值的数据,如Yes 或No、True 或False 、On 或Off. 注意:很省空间的一种数据类型,如果能够满足需求应该尽量多用。 tinyint 整型 tinyint 数据类型能存储从0到255 之间的整数。它在你只打算存储有限数目的数值时很有用。这种数据类型在数据库中占用1 个字节. 注意:如果bit类型太单调不能满足您的需求,您可以考虑用tinyint类型,因为这个类型相对也是比较安全的,不接受恶意脚本内容的嵌入。 smallint 整型 smallint 数据类型可以存储从- 2的15次幂(-32768)到2的15次幂(32767)之间的整数。这种数据类型对存储一些常限定在特定范围内的数值型数据非常有用。这种数据类型在数据库里占用2 字节空间. 注意:如果tinyint类型太单调不能满足您的需求,您可以考虑用smallint类型,因为这个类型相对也是比较安全的,不接受恶意脚本内容的嵌入。 int 整型 int 数据类型可以存储从- 2的31次幂(-2147483648)到2的31次幂 (2147483 647)之间的整数。存储到数据库的几乎所有数值型的数据都可以用这种数据类型。这种数据类型在数据库里占用4个字节. 注意

day52_9_16Django中的静态文件和orm

北城余情 提交于 2019-12-10 05:29:33
一。静态文件配置   在配置静态文件时,需要创建一个文件夹在Django项目文件夹下,名字与使用无关。   静态文件包括html等使用的不会变动的插件文件等。分为三个部分:     css文件夹 当前网站所有的样式文件     js文件 当前网站所有的js文件     img文件 当前网站所有的图片文件     其他(前端框架代码)。   1.在静态文件的调用时,不能直接在html文件夹中使用相对路径或绝对路径进行调用,因为在页面访问的时后不会获取到该插件资源,所以需要将所有静态文件暴露给访客,使得访客可以获得。   在Django中可以使用以下代码进行资源暴露: STATIC_URL = '/static/' # 这个static不是文件夹的名字 而是接口前缀 """只要你想访问静态文件中的资源 文件路径就必须用static开头""" STATICFILES_DIRS = [ os.path.join(BASE_DIR,'static'), # 真正的文件夹路径 os.path.join(BASE_DIR,'static1'), # 真正的文件夹路径 os.path.join(BASE_DIR,'static2'), # 真正的文件夹路径 os.path.join(BASE_DIR,'static3') # 真正的文件夹路径 ]  

orm常用操作

自作多情 提交于 2019-12-10 01:51:15
一些说明: 表myapp_person的名称是自动生成的,如果你要自定义表名,需要在model的Meta类中指定 db_table 参数,强烈建议使用小写表名,特别是使用MySQL作为后端数据库时。 id字段是自动添加的,如果你想要指定自定义主键,只需在其中一个字段中指定 primary_key=True 即可。如果Django发现你已经明确地设置了Field.primary_key,它将不会添加自动ID列。 本示例中的CREATE TABLE SQL使用PostgreSQL语法进行格式化,但值得注意的是,Django会根据配置文件中指定的数据库后端类型来生成相应的SQL语句。 Django支持MySQL5.5及更高版本。 Django ORM 常用字段和参数 常用字段 AutoField int自增列,必须填入参数 primary_key=True。当model中如果没有自增列,则自动会创建一个列名为id的列。 IntegerField 一个整数类型,范围在 -2147483648 to 2147483647。(一般不用它来存手机号(位数也不够),直接用字符串存,) CharField 字符类型,必须提供max_length参数, max_length表示字符长度。 这里需要知道的是Django中的CharField对应的MySQL数据库中的varchar类型

FISCO BCOS CRUD使用指南

喜你入骨 提交于 2019-12-09 22:58:48
本文将介绍 FISCO BCOS的CRUD功能,帮助开发者更高效便捷地开发区块链应用。 为什么设计CRUD功能? 在FISCO BCOS 1.0中,节点采用MPT数据结构,通过LevelDB将数据存储于本地,这种模式受限于本地磁盘大小,当业务量增大时数据会急剧膨胀,要进行数据迁移也非常复杂,给数据存储带来较大成本和维护难度。 为了突破容量和性能瓶颈,FISCO BCOS 2.0针对底层存储进行了重新设计,实现了分布式存储,带来了容量和性能上的提升。得益于分布式存储采用了库表结构,FISCO BCOS 2.0设计一套CRUD(Create增加、Read读取、Update更新和Delete删除),让接口更加顺其自然。CRUD面向库表的开发方式符合业务开发习惯,同时也为业务开发提供了另外一种选择(以往只能用Solidity合约),从而让区块链应用开发更加便利。 CRUD有哪些优势? CRUD的核心设计思想是提供面向SQL编程的区块链应用开发规范。其好处显而易见,主要体现在两升两降。 提升开发区块链应用的效率 CRUD类似传统业务SQL编程开发模式,大大降低了合约开发难度。开发者将合约当做数据库的存储过程,将区块链数据的读写操作转换为面向表的读写操作,简单易用,极大提升了开发区块链应用的效率。 提升区块链应用的性能 CRUD底层逻辑基于预编译合约实现,其数据存储采用分布式存储

Python网络编程05----django与数据库的交互

旧时模样 提交于 2019-12-08 22:58:19
介绍 Django为多种数据库后台提供了统一的调用API,在Django的帮助下,我们不用直接编写SQL语句。Django将关系型的表(table)转换成为一个类(class)。而每个记录(record)是该类下的一个对象(object)。我们可以使用基于对象的方法,来操纵关系型数据库。 设置数据库 设置数据库需要修改 settings.py 文件 如果使用的数据库是mysql: [python] view plain copy DATABASES = { 'default' : { 'ENGINE' : "django.db.backends.mysql", 'NAME' : "djangodb", 'HOST' : "localhost", 'USER' : "root", 'PASSWORD' : "123456", } } PORT如果不设置,会使用默认端口3306 如果没有安装mysql,你也可以使用sqlite。SQLite非常适合测试,甚至可以部署在没有大量并发写入的情况下。 由于SQLite使用的本地文件系统作为存储介质并且用原生的文件系统权限来做访问控制,像主机、端口、用户、密码这种信息统统不需要 只需要输入如下信息: [python] view plain copy DATABASES = { 'default' : { 'NAME' : r 'C: