精华内容
下载资源
问答
  • Mysql修改字段名、修改字段类型

    万次阅读 多人点赞 2018-02-23 15:45:02
    mysql修改字段类型: --能修改字段类型、类型长度、默认值、注释 --对某字段进行修改 ALTER TABLE 表名 MODIFY COLUMN 字段名 新数据类型 新类型长度 新默认值 新注释; -- COLUMN可以省略 alter table table1 ...

    1 修改字段类型、字段名、字段注释、类型长度、字段默认值

    mysql修改字段类型:	 
    --能修改字段类型、类型长度、默认值、注释
    --对某字段进行修改
    ALTER  TABLE 表名 MODIFY [COLUMN] 字段名 新数据类型 新类型长度  新默认值  新注释;
     -- COLUMN关键字可以省略不写
    
    alter  table table1 modify  column column1  decimal(10,1) DEFAULT NULL COMMENT '注释'; -- 正常,能修改字段类型、类型长度、默认值、注释
    
    alter  table table1 modify column1  decimal(10,2) DEFAULT NULL COMMENT '注释'; 
    -- 正常,能修改字段类型、类型长度、默认值、注释
    
    mysql修改字段名:
    ALTER  TABLE 表名 CHANGE [column] 旧字段名 新字段名 新数据类型;	 
    alter  table table1 change column1 column1 varchar(100) DEFAULT 1.2 COMMENT '注释'; -- 正常,此时字段名称没有改变,能修改字段类型、类型长度、默认值、注释
    alter  table table1 change column1 column2 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
    alter  table table1 change column2 column1 decimal(10,1) DEFAULT NULL COMMENT '注释' -- 正常,能修改字段名、字段类型、类型长度、默认值、注释
    alter  table table1 change column1 column2; -- 报错 
    
    mysql> alter table white_user change column name nick_name  varchar(50) null comment '昵称'; -- 正确
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    

    2 修改表名

    ALTER TABLE 旧表名 RENAME TO 新表名 ;
    
    mysql> show tables ;
    +-------------------+
    | Tables_in_db_test |
    +-------------------+
    | white_user   |
    +-------------------+
    1 row in set (0.00 sec)
    
    
    
    mysql> alter table white_user rename to white_user_new ;
    Query OK, 0 rows affected (0.00 sec)
    
    mysql> show tables ;
    +-------------------+
    | Tables_in_db_test |
    +-------------------+
    | white_user_new    |
    +-------------------+
    1 row in set (0.00 sec)

    3 修改表的注释

    ALTER TABLE 表名 COMMENT '新注释'
    
    mysql> alter table  white_user_new comment '新表-白名单表' ;
    Query OK, 0 rows affected (0.01 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> show create table white_user_new ;
     CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表' 
    
    
    

    4

    在指定位置插入新字段

    ALTER TABLE 表名 ADD [COLUMN] 字段名 字段类型 是否可为空 COMMENT '注释' AFTER 指定某字段 ;
    --COLUMN关键字可以省略不写
    
    mysql> alter table white_user_new add column erp varchar(50) not null comment 'erp账号' after name ;
    Query OK, 0 rows affected (0.03 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    --在name字段后面添加erp字段
    
    mysql> show create table white_user_new ;
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `erp` varchar(50) NOT NULL COMMENT 'erp账号', 
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    
    mysql> alter table white_user_new add position varchar(50) not null comment '岗位' after name ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    --在name字段后面添加position字段。
    
    mysql> show create table white_user_new ;                                      
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `position` varchar(50) NOT NULL COMMENT '岗位',
      `erp` varchar(50) NOT NULL COMMENT 'erp账号',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    mysql> alter table white_user_new add  mobile varchar(50) not null comment '手机号码' before position ;
    --报错,在position字段前添加mobile字段,不能使用before关键字
    

    5 删除字段

    ALTER TABLE 表名 DROP [COLUMN] 字段名 ;
    --COLUMN关键字可以省略不写
    
    mysql> alter table white_user_new drop column position ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> alter table white_user_new drop erp ;
    Query OK, 0 rows affected (0.02 sec)
    Records: 0  Duplicates: 0  Warnings: 0
    
    mysql> show create table white_user_new ;                                      
    CREATE TABLE `white_user_new` (
      `id` bigint(20) NOT NULL AUTO_INCREMENT COMMENT 'ID',
      `name` varchar(50) NOT NULL COMMENT '姓名',
      `created_time` datetime DEFAULT NULL COMMENT '创建时间',
      `updated_time` datetime DEFAULT NULL COMMENT '更新时间',
      PRIMARY KEY (`id`)
    ) ENGINE=InnoDB AUTO_INCREMENT=6 DEFAULT CHARSET=utf8 COMMENT='新表-白名单表'      
    
    
    
    

    -------------------------------

    大头记账本

    生活花销,便捷清晰,安全加密。免费永久提供服务。

    -------------------------------

    恋爱花销】记账本

    【统计谈恋爱花了多少花哪去了,做到心中有数】

    安全加密,免费永久提供服务

     

    -------------------------------

    更多企业内的技术应用和使用技巧,请移步至我的公众号【程序员实用技能】

    图片

    展开全文
  • 应用场景:在处理来自后台的数据时,字段名不匹配、掺杂了多余数据。 假设现有一个编辑功能,编辑时需要做数据回显,即根据id向后台查询该条数据的关联数据,把结果赋值给视图绑定的数据模型。 ok,一切看起来并...

    前言:如果你是一名前端开发者,那么请确保下文能够一字不落的看完,因为接下来的问题你曾经100%遇到过、且高达90%的人会忽略或者处理方式不够简洁.... 

    应用场景:在处理来自后台的数据时,字段名不匹配、掺杂了多余数据。

    假设现有一个编辑功能,编辑时需要做数据回显,即根据id向后台查询该条数据的关联数据,把结果赋值给视图绑定的数据模型。

    ok,一切看起来并没有什么问题,接着往下看:

    数据模拟

    // 模拟后台接口返回的数据
    let res = {
        id: "21432423523",
        name: "张三疯",
        age: "14",
        sex: "男",
        info: false,
        success: true,
        hobby: "小姐姐",
        location: "陕西",
        phone: '13255555555',
        email: 'webcmh@163.com',
    };
    let modules= {}; // 视图层绑定的数据
    modules = res // 回显 直接赋值

    拿到数据之后我们需要做的是把后台数据赋值给modules对象,用于回显,大多数情况下会直接赋值,那么问题浮出水面:

    问题:

    1. 如果编辑页面只允许修改name、phone这两个字段,那么直接赋值指针的做法在提交的时候会把所有字段传递给后台,显然是不正确的,因为后台只需要id、name、phone三个字段,而不是所有的字段。(不考虑后台是否过滤数据)

    2. 假设后台查询到的包含name的字段是userName,提交保存的时候需要的字段是name,那么我们直接赋值的方式会直接把userName拷贝过去,提交的时候也是userName字段,与接口所需数据不匹配。

    3. 若modules数据模型是共用的。新增功能、编辑功能视图层都是绑定的这套数据,那么编辑的时候会把新增时所不需要的字段也拷贝,这样会导致新增时由于掺杂多余字段而与后台所需字段不匹配,从而导致新增功能不能提交。

    上述问题,常规的处理方式如下:

    // 常规 - 提取所需的字段
    modules.id = res.id;
    modules.userName = res.name; //修改字段名称
    modules.age = res.age;
    modules.sex = res.sex;
    modules.phone = res.phone;
    modules.email = res.email;

    对指定的字段进行单个赋值的方式很是繁琐,如果有一百个数据,需要50个字段 就需要写五十行赋值的代码。

    解决方式 ①:取其精华(解构) 提取需要的数据,进行解构赋值。

    // 取其精华
    ({id: modules.id,name: modules.userName, age: modules.age} = res)

    解决方式 ②:去其糟粕(解构 + 剩余参数)  解构出不需要的字段,剩余参数是所需字段。

    // 去其糟粕
    let {name,info,...arg} = res
    console.log(arg)

    解决方式 ③:指定需要的字段组成数组,进行遍历取值;

    let wantList = ['name', 'sex', 'email'] //所需的字段组成数组
    wantList.forEach(item => modules[item] = res[item])
    console.log(modules)

    总结:代码的灵魂在于简洁、易读。

    展开全文
  • 这就说明 这个表中的UID 与数据库的表中字段重复 这是 我们可以这样查 给 要查的字段 加上 " 要查的字段名字"。 select "UID" from sys_data_pru 这时 查出来的数据就是正确的。 要是在后台 写语句的时候 ...

    同一个查询。确查出来两个不同的 UID 出现这样情况 如图:

    这就说明 这个表中的UID 与数据库的表中字段重复  这是 我们可以这样查 给 要查的字段 加上 " 要查的字段名字"。

    select "UID" from sys_data_pru 

    这时 查出来的数据就是正确的。

    要是在后台 写语句的时候 可以这个样子 用下转义

     string squid = "select     " + "\"UID\"" + "      from sys_data_pru where guid='" + guid + "'";    

     

    转载于:https://www.cnblogs.com/smile-wei/archive/2011/12/27/2302987.html

    展开全文
  • 字段名称可以不同,字段数量、数据类型、顺序必须相同。 UNION 操作符用于合并两个或多个 SELECT 语句的结果集。 需要注意的是 1、UNION 内部的 SELECT 语句必须拥有相同数量的列。列也必须拥有相似的数据类型。同时...
  • 在PG的官网文档里,关于字段名称的大小写有这么一段描述: https://www.postgresql.org/docs/current/static/sql-syntax-lexical.html 因此,在pg里面针对标识符(identifier)-- 主要是字段名称 -- 的大小写处理...
  • 当大家需要扩展一个SharePoint列表/文档库的数据结构时,就会为列表/文档库创建新的字段(栏)。不管是直接为列表/文档库...每个SharePoint字段实际上有两个名称,一个是“标题”(Title,有时候也把它叫做“显示名称”)
  • 1.参考表 IF wa_fieldcat-FIELDNAME EQ 'MEINS'.  WA_FIELDCAT-ref_fieldname = 'MEINS'.  WA_FIELDCAT-REF_TABname = 'MARA'. ENDIF. 2.函数转换 CALL FUNCTION 'CONVERSION_EXIT_CUNIT_OUTPUT'
  • 以常见的国土调查或空间规划业务中,根据地类代码赋名称为例,假设地类编码字段正确,地类名称字段有误或者为空的情况,此时我们想根据正确的编码对名称进行赋值,比如将201赋值为城市,202赋值为建制镇,203赋值为...
  • 场景: ... 卡和存储不断存款和取款,网银...如何保持余额的正确。   数据库余额表:原本想用版本号来实现的,后面弃用version字段。 DROP TABLE IF EXISTS `t_test`; CREATE TABLE `t_test` (  `id` int(11) NOT...
  • CakePHP的belongsTo关系中关于外键关联字段都不是id字段的问题
  • 修改字段 类型、名、注释、类型长度、默认值 ALTER TABLE 表名 MODIFY [COLUMN] 字段名 新类型 新类型长度 新默认值 新注释; -- COLUMN关键字可以省略不写 -- 能修改字段类型、类型长度、默认值、注释 alter ...
  • help给某字段添加F4帮助时,可能会出现自定义的列名称失效了,变成数据字典中定义的字段名称了,这是因为fieldcat-seltext_s/seltext_m/seltext_l使用不正确导致的,如果ALV对应内表中字段定义的长度很大时,而...
  • 增加字段、删除字段、增加约束、删除约束、修改缺省值、修改字段数据类型、重命名字段、重命名表。 所有这些动作都是用 ALTER TABLE 命令执行的。 1、 增加字段 ALTER TABLE products ADD description text; 你...
  • 调用数据字典中的search help给某字段添加F4帮助时,可能会出现自定义的列名称失效了,变成数据字典中定义的字段名称了,这是因为fieldcat-seltext_s/seltext_m/seltext_l使用不正确导致的,如果ALV对应内表中字段...
  • MySQL添加字段的方法并不复杂,下面将为您详细介绍MySQL添加字段和修改字段等操作的实现方法,希望对您学习MySQL添加字段方面会有所帮助。 1.登录数据库 >mysql -u root -p 数据库名称 2.查询所有数据表 >...
  • 需求:fastadmin给某个表的某个字段添加外部关联,在编辑界面中可以选择外部关联表的数据。 操作说明: 有一张表:奖品表 有一张表:奖品类型表 奖品表中包含了奖品类型(类型表id)字段。 此时: 我要通过...
  • 关于hibernate执行createSQLQuery时字段重名的问题  前些天做了一个小项目,主要做日志评估这块,由于各种的查询用于计算过于复杂,某些查询用hql很难实现,因此用了hibernate自带的createSQLQuery方法。前几天...
  • 一、关于shapefile 关于shapefile的局限性,可以参考这篇文章:https://blog.csdn.net/yaoxiaochuang/article/details/52465335 Shapefile是创建于上个世纪90年代的数据格式,由于它开放易用至今仍然倍受欢迎。...
  • 通过表名和字段名查询字段类型

    千次阅读 2014-10-31 16:28:21
    今天遇到了一个问题,就是要通过表名和字段名获取该字段字段类型。网上找了好多方法,都不成功(本人的数据库方面的知识比较匮乏)。后来,终于找到一个正确的语句,特此记录。   select data_type from user_...
  • C#属性与字段

    千次阅读 2014-05-03 17:55:40
    1.在C#中可以自由的、毫无限制的访问公有字段,但在一些场合中,我们需要只能给字段赋于某个范围的值、或是要求字段只能读或只能写,或是在改变字段时能改变对象的其他一些状态,这些单靠字段是无法做到的,于是就有...
  • 技术交流群:233513714 如果执行了以下的语句,则brand等于‘OPPO’条件所对应的数据不会做改变,但是sequence_brand列除brand = 'OPPO'之外的所有数据都会变为0 错误语句:update t_...正确语句:update t...
  • logstash导入之过滤字段

    千次阅读 2019-06-28 14:37:36
    如题,在导入es后,发现会在原有字段中多了一个@version和@timestamp字段,对于强迫症的我是无法接受的,于是查了好久才找到正确的方法。如下 filter { mutate { remove_field => ["@version", "@...
  • 我们在使用Mybatis的过程中,有可能会出现数据库的字段名与实体类的属性名不一致的问题,这样的话会对数据库的操作造成影响,比如说我要查询数据库的所有信息,我的属性名是这样的: 数据库中的字段是这样的: ...
  • 存储过程负责向名字为TEST的表插入这两个变量,其中TEST表有两个字段名字就叫firstname和lastname。TEST表的主键是一个自增长类型的字段名字叫ContactID。问题是我如何获取插入的那条数据的主键值。” 错误...
  • arcgis字段计算器实例

    千次阅读 2017-05-19 17:20:49
    用Python来写arcgis的字段计算器,根据行政区划来给字段赋值,Python要注意格式的问题,1.Python与其他语言最大的区别就是,Python的代码块不使用大括号{}来控制类,函数以及其他逻辑判断。python最具特色的就是用缩...
  • mysql中创建字段错误

    2017-06-27 09:32:15
    mysql中创建字段错误
  • 1.修改字段类型 改成备注:ALTER TABLE #tablename# alter column #columnname# text 改成文本:ALTER TABLE #tablename# alter column #columnname# varchar(20) 改成数字:ALTER TABLE #tablename# alter ...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 275,757
精华内容 110,302
关键字:

关于字段名称正确的是