精华内容
下载资源
问答
  • 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='新表-白名单表'      
    
    
    
    

    欢迎关注我的公众号

    展开全文
  • MySQL添加字段和修改字段

    万次阅读 2019-06-17 09:33:53
    MySQL添加字段和修改字段 MySQL添加字段的方法并不复杂,下面将为您详细介绍MYSQL添加字段和修改字段等操作的实现方法,希望对您学习MySQL添加字段方面会有所帮助。 1添加表字段 alter table table1 add ...

    MySQL添加字段和修改字段

    MySQL添加字段的方法并不复杂,下面将为您详细介绍MYSQL添加字段和修改字段等操作的实现方法,希望对您学习MySQL添加字段方面会有所帮助。

     

    1添加表字段

    alter table table1 add transactor varchar(10) not Null;

    alter table   table1 add id int unsigned not Null auto_increment primary key

    2.修改某个表的字段类型及指定为空或非空
    alter table 表名称 change 字段名称 字段名称 字段类型 [是否允许非空];
    alter table 表名称 modify 字段名称 字段类型 [是否允许非空];

    alter table 表名称 modify 字段名称 字段类型 [是否允许非空];

    3.修改某个表的字段名称及指定为空或非空
    alter table 表名称 change 字段原名称 字段新名称 字段类型 [是否允许非空

    4如果要删除某一字段,可用命令:ALTER TABLE mytable DROP 字段名;

    展开全文
  • sql的update语句 批量更新某字段

    万次阅读 2018-10-26 09:22:34
    update 表名 set 字段A = replace(字段A ,"png","jpg" ); 2 批量拼接字符串到某字段 update 表名 set 字段A = CONCAT( 字段A , "xxx" ); update 表名 set 字段A = CONCAT( "...

    Mysql 批量替换:

    1 有时候要实现字段的批量替换

    update 表名 set 字段A = replace(字段A ,"png","jpg" );

     

    2 批量拼接字符串到某字段

    update 表名 set 字段A = CONCAT( 字段A  , "xxx"  );

    update 表名 set 字段A = CONCAT( "yyy" , 字段A  , "xxx"  );

     

    3 批量截取某字段,扔掉开始的4个字符

    update 表名 set 字段A=SUBSTR(字段A,4);

     

    4 批量截取某字段,保留结尾的3个字符
    update 表名 set 字段A=SUBSTR(字段A,-3);

     

    5 批量截取某字段,去掉结尾的2个字符

    update 表名 set 字段A=SUBSTR(字段A,1,LENGTH(字段A)-2);

     

    更详细的方法请参考MYSQL的SUBSTR函数

     

    特别的思路(一定要看)

    1、将目标数据,借助navicat等工具,可以导出为update sql

    2、既然是纯文本了,就可以用notepad++记事本工具,批量替换了

    3、替换时可以用正则匹配替换,正则匹配详见这篇文章  正则匹配html标签_匹配两字符串之间内容_匹配image标签

     

     

    ------------update+select----------------------------------以下是互联网收集,用的时候再仔细验证

    /*
      多表关联update的时候,记得要加exists()条件,否则不满足条件的记录被update称NULL:
      比如:stu表存在,但stu1表不存在的数据,对应的字段会被updat成NULL;
    */

    6 多表关联update单字段
    update stu t set t.NAME = (select t1.NAME from stu1 t1 where t1.ID = t.ID)
    where exists(select 1 from stu1 t2 where t2.ID = t.ID);

    7 多表关联update多字段
    update stu t set (t.NAME, t.SEX) = (select t1.NAME, t1.SEX from stu1 t1 where t1.ID = t.ID)
    where exists(select 1 from stu1 t2 where t2.ID = t.ID);

     

    UPDATE table1 alias
    SET (column_name,column_name ) = (
    SELECT (column_name, column_name)
    FROM table2
    WHERE column_name = alias.column_name)
    WHERE column_name = VALUE

    展开全文
  • Scala 覆写抽象字段和具体字段

    万次阅读 2018-11-19 13:49:57
    Scala 覆写抽象字段和具体字段 Scala程序设计 第2版 - 原版.pdf 下载:https://download.csdn.net/download/u014646662/10805074 1覆写trait中的字段 2 覆写类字段 3 覆写抽象类型 对人工智能感兴趣的同学,...

    Scala 覆写抽象字段和具体字段

    Scala程序设计 第2版 - 原版.pdf 下载:https://download.csdn.net/download/u014646662/10805074

    1 覆写trait中的字段

    2 覆写类字段

    3 覆写抽象类型

    对人工智能感兴趣的同学,可以点击以下链接:

    现在人工智能非常火爆,很多朋友都想学,但是一般的教程都是为博硕生准备的,太难看懂了。最近发现了一个非常适合小白入门的教程,不仅通俗易懂而且还很风趣幽默。所以忍不住分享一下给大家。点这里可以跳转到教程。

    https://www.cbedai.net/u014646662

    1 覆写trait中的字段

    下面列举了一段精心设计的示例代码。在字段初始化之前,该示例会调用这个尚未定义的字段:

    package cn.com.tengen.test.obj
    
    trait TestTrait {
      val value: Int
      val inverse = 1.0/value
    }
    
    object Test {
      def main(args: Array[String]): Unit = {
        val o = new TestTrait {
          override val value: Int = 10
          println("TestTrait: value = "+value+", inverse = "+inverse)
        }
      }
    }
    
    
    //输出:
    TestTrait: value = 10, inverse = Infinity

    正如你所预计的那样,inverse 变量过早被计算了。尽管没有抛出除零异常(divide-byzeroexception),但是编译器仍认为inverse 值无穷大。Scala 为此类问题提供了两个解决方案。第一个方案是使用惰性值(lazy value)

    package cn.com.tengen.test.obj
    
    trait TestTrait {
      val value: Int
      lazy val inverse = 1.0/value
    }
    
    object Test {
      def main(args: Array[String]): Unit = {
        val o = new TestTrait {
          override val value: Int = 10
          println("TestTrait: value = "+value+", inverse = "+inverse)
        }
      }
    }
    
    //输出:
    TestTrait: value = 10, inverse = 0.1

    现在,inverse 成功地被初始化,并被赋予了合法值,只有在调用时lazy 关键字才能起到作用。这是因为lazy 会推迟对变量进行估值,直到有代码需要使用该值。假如某一val 变量是惰性值,请确保尽可能地推迟对该val 值的使用。

    第二个方案:预先初始化字段

    trait TestTrait {
      val value: Int
      val inverse = 1.0/value
      println("TestTrait: value = "+value+", inverse = "+inverse)
    }
    
    object Test {
      def main(args: Array[String]): Unit = {
        val o = new  {
          val value: Int = 10
        } with TestTrait
      }
    }
    
    //输出:
    TestTrait: value = 10, inverse = 0.1

    在with TestTrait 子句执行之前,我们便已实例化了一个匿名内部类并在代码块中初始化了该内部类的值字段。这确保了在执行TestTrait 特征体之前,value 字段已初始化完毕。

    尽可能避免(在类中和trait 中)使用var 字段,而使用公共 var 字段则尤为危险。

    不过,val 所提供的可见性保护并非无懈可击。我们可以在初始化子类实例时对trait 中的val 字段进行覆写,不过初始化完之后,该字段仍为不可变值。

    2 覆写类字段

    类中声明的成员,其表现与trait 中的成员大致相同。为了能够完整地描述如何覆写类字段,下面这个示例中的继承类既覆写了val 字段,又对var 字段进行了重新赋值:

    package cn.com.tengen.test.obj
    
    class Test {
      val name = "Test"
      var count = 0
    }
    
    class TestSon extends Test {
      override val name = "TestSon"
      count = 1
    }
    
    
    object Test {
      def main(args: Array[String]): Unit = {
        val s = new TestSon()
        println(s.name)
        println(s.count)
      }
    }
    
    
    //输出:
    TestSon
    1

    覆写具体val 字段时,override 关键字是必不可少的,不过对于count 这个var 字段而言,则不然。这是因为修改val 字段意味着我们正在修改某一常量(val 字段)的初始化过程,这类“特殊”操作需要使用override 关键字。

    正如我们所预计的那样,继承类对这两个字段都进行了覆写。下面对之前的示例进行修改,将基类中的val 字段和var 字段都修改成abstract 字段:

    package cn.com.tengen.test.obj
    
    abstract class Test {
      val name:String
      var count:Int
    }
    
    class TestSon extends Test {
      val name = "TestSon"
      var count = 1
    }
    
    object Test {
      def main(args: Array[String]): Unit = {
        val s = new TestSon()
        println(s.name)
        println(s.count)
      }
    }
    
    

    由于这些字段均声明为abstract 类型,因此TestSon中不再需要override 关键字。但是var 和 val不能少

    有必要强调一下:name 和count 是抽象字段,它们并不是包含默认值的具体字段。如果在Java 类中进行类似的声明,如String name,Java 将会声明一个具有默认值的具体字段,而在本例中默认值为null。Java 并不支持抽象字段,只支持抽象方法。

    3 覆写抽象类型

    abstract class Test {
      type In
      val source: In
      def read: String // 该方法会读取数据源内容,并返回字符串
    }
    class TestSon(val source: String) extends Test {
      type In = String
      def read: String = source
    }
    

    该示例演示了如何声明抽象类型以及如何在继承类中为该抽象类型定义具体值。Test 类声明了In 类型,但却未初始化该类型。而具体继承类TestSon使用type In = String 语句为该类型提供了具体值。

    展开全文
  • 平时Wrapper大家都知道一般是加在where后的条件,但是我想灵活地写select后的字段怎么办呢? 首先推荐大家学习一定要看文档,点我 大前提:CURD的执行接口需要有Wrapper传参,比如list(Wrapper<T...
  • 文章目录Mybatis plus - 映射字段时排除不必要的字段,忽略字段1、声明该字段是 transient 的2、声明该字段是 static 的3、通过注解声明该字段不是一个数据库表里面的字段 Mybatis plus - 映射字段时排除不必要的...
  • SQL---mysql新增字段

    万次阅读 多人点赞 2018-03-14 10:28:44
    ALTER TABLE people ADD COLUMN name VARCHAR(100) DEFAULT NULL COMMENT '姓名' AFTER age; 修改表 people 增加字段name 长度100 默认为null 备注:姓名 在age字段后面; ...
  • 升序:select * from 表名 order by 表中的字段 asc(mysql中默认是升序排列,可不写) 降序:select * from 表名 order by 表中的字段 desc 若要进行同时一个升序,一个降序,则如下: order by 升序字段 asc,降序...
  • SQL语句两个字段同时order by 排序

    万次阅读 2018-03-28 00:04:59
    目录 1.使用两个字段同时order by 排序 2.具体操作如下: ... sql支持多个字段进行order by排序,各字段之间用逗号”,”隔开。如: SELECT *FROM tablename order by column1,column2,column3 ; 如果...
  • 1.应用场景 有时[比如在Linux服务器下, 或者借助数据库管理工具执行SQL], 需要使用sql语句直接对数据表进行新建/修改表结构, 填充/更新数据等. ... 添加字段,比如我在数据表中添加一个 age 字段,类型为int(11...
  • hive 修改字段类型和增加字段

    万次阅读 2018-12-04 15:34:13
    Hive 表修改字段类型 Alter table 表名 change column 原字段名称 现字段名称 数据类型   新增字段表 alter table 表名 add columns(字段名 数据类型)    
  • 1.增加一个字段 代码如下 复制代码 //增加一个字段,默认为空alter table user add COLUMN new1 VARCHAR(20) DEFAULT NULL; //增加一个字段,默认不能为空alter table user add COLUMN...
  • ArcGIS字段计算器分割字段中的字符串

    万次阅读 多人点赞 2017-07-07 18:44:12
    最近在整理植物数据,数据本来是以excel进行存储,但是其中涉及到要对字段进行分割,由于对excel的相关函数不熟悉于是想着能不能用arcgis的字段计算器进行解决,经过摸索成功地解决了自己遇到的问题,并记录下来,...
  • hive修改字段字段类型

    千次阅读 2020-01-15 16:19:53
    hive修改字段类型语句:alter table 表名 change column 原字段名 新字段字段类型; alter table user_chain change column u_register u_registe date;(u_register原类型为string类型) 这样修改会报一个错误...
  • 1:增加字段 语法:alter table 表名 add 新增字段字段类型 默认值... 2:修改字段名 语法:exec sp_rename '表名.字段名','修改字段名','COLUMN。 注意:更改对象名的任一部分都可能会破坏脚本和...
  • 数据字典格式的表结构(表名,字段名,字段类型,字段长度,备注) DECLARE @tableName varchar(500) SET @tableName = '表名' SELECT one.表名,one.字段名,one.字段类型,two.column_description FROM ( select ...
  • 1、表(t_tbl)增加字段 – 添加一个名为 col_name_add 的字符字段 alter table t_tbl add column col_name_add varchar(20); 2、修改字段名 – 将 col_name_old 的字段名改为 col_name_new 的字段名 alter ...
  • 新增字段 为atest集合新增一个字段content db.atest.update({},{$set:{content:""}},{multi:1}) 删除uname字段 db.atest.update({},{$unset:{uname:""}},false,true) 修改字段,把content改为mcontent db....
  • 【mysql】order by多个字段排序

    万次阅读 多人点赞 2018-03-14 14:20:53
    今天遇到了两个字段排序的问题,感觉不是很清晰,所有又按照规则查询了下,总结下。count都是306的有三个。现在需要同时按照age和count排序,测试最后的排序结果。默认都是按照age和count的升序排序SELECT * FROM t_...
  • 直接上代码: type User struct{ Username string `json:"Username"` Socre float`json:"Socre...//获取结构体中字段的名称 func GetFieldName(columnName string, info User) float64 { var val float64...
  • Java反射获取字段、设置字段以及获取字段的值 获取字段 1.先找到字段所在类的字节码 2.找到需要被获取的字段 Class类中获取字段: public Field[] getFields();//获取包括自身和继承(实现)过来的所有的public...
  • //给字段名是number的字段加1,可以根据自己的需求来修改 DB::table('order')->increment('number'); //给字段是number的字段加5,可以根据自己的需求来修改 DB::table('order')->increment('number', 5); /...
  • 新增字段: ALTER TABLE [表名] ADD [字段名] NVARCHAR (50) NULL 删除字段: ALTER TABLE [表名] DROP COLUMN [字段名] 修改字段: ALTER TABLE [表名] MODIFYCOLUMN [字段名] NVARCHAR (50) NULL ...
  • 2018年5月23日1 创建表的时候写注释create table test1(field_name int comment '字段的注释')comment='表的注释';2 修改表的注释alter table test1 comment '修改后的表的注释';3 修改字段的注释alter table test1 ...
  • distinct去重多个字段,其他字段不去重,一起输出 例如: select AA, BB, CC from tableName; 要求是对AA,BB这两个字段都去重,CC是不需要去重的,最后一起输出 求解!!! ...
  • mysql添加字段和修改字段的位置

    千次阅读 2019-09-03 11:12:27
    添加字段: alter table 表名 add 字段字段类型; 修改字段的位置: 修改字段排列位置 ALTER TABLE 表名 MODIFY 字段名1 数据类型 FIRST|AFTER 字段名2 参数说明 FIRST,可选参数 将字段1,修改为表的第一个字段...
  • sql server怎么设置ID字段为自增字段

    万次阅读 多人点赞 2018-10-23 00:12:15
    ②列属性中,通过设置“标识规范”的属性可以设置字段自增,将“是标识”的值改为是,即成功设置id字段为自增字段 ③注意! 能够设置ID字段自增的字段必须是可自增的,比如int,bigint类型,而varchar类型是不可...
  • ORDER BY 字段1 IS NULL DESC,字段2 DESC

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 482,163
精华内容 192,865
关键字:

字段