Tag: MySQL

完全删除MySQL 5.5

我试图从我的Ubuntu 12.04完全卸载MySQL。 但不能。 我尝试了很多命令。 但没有任何工作。 任何人都可以在这里帮忙! sudo apt-get remove mysql-server mysql-client mysql-common sudo apt-get autoremove 我无法理解要做什么。 我想删除有关MySQL的一切。 每当我试图find它。 我明白了。 我希望一切都被删除。 mysql-server,mysql-client,mysql-libraries甚至是configuration。 请帮帮我!!!

是否有一个MySQL的命名约定?

以下是我如何做到这一点: 表名是小写字母,用下划线来分隔单词,并且是单数的(例如'foo','foo_bar'等等 我一般(不总是)有一个自动增量PK。 我使用以下约定:tablename_id(例如'foo_id','foo_bar_id'等)。 当一个表包含一个外键的列时,我只是从它来自的任何表中复制该键的列名称。 例如,假设表'foo_bar'有FK'foo_id'(其中'foo_id'是'foo'的PK)。 当定义FK来强制引用完整性时,我使用以下内容:tablename_fk_columnname(例如进一步的示例3,它将是'foo_bar_foo_id')。 由于这是一个表名/列名称组合,所以在数据库中保证是唯一的。 我命令这样的列:PKs,FKs,然后按字母顺序排列其余的列 有没有更好,更标准的方法来做到这一点?

常见的MySQL字段及其适当的数据types

我正在build立一个非常小的MySQL数据库,它存储了名字,姓氏,电子邮件和电话号码,并且正努力为每个字段find“完美的”数据types。 我知道不存在这样一个完美的答案,但是对于这些常用领域必须有一些共同的约定。 例如,我确定一个未格式化的美国电话号码太大,无法存储为无符号整数,它必须至less是一个bigint。 因为我相信其他人可能会觉得这有用,我不想限制我的问题,只是我上面提到的领域。 哪些数据types适用于公共数据库字段? 电话号码,电子邮件和地址等字段?

什么时候应该使用复合索引?

什么时候应该在数据库中使用组合索引? 什么是使用复合索引的性能分支)? 为什么我应该使用复合索引? 例如,我有一个homes表: CREATE TABLE IF NOT EXISTS `homes` ( `home_id` int(10) unsigned NOT NULL auto_increment, `sqft` smallint(5) unsigned NOT NULL, `year_built` smallint(5) unsigned NOT NULL, `geolat` decimal(10,6) default NULL, `geolng` decimal(10,6) default NULL, PRIMARY KEY (`home_id`), KEY `geolat` (`geolat`), KEY `geolng` (`geolng`), ) ENGINE=InnoDB ; 对于geolat和geolng使用复合索引是否geolng ,例如: 我replace: KEY `geolat` (`geolat`), KEY `geolng` […]

将MySQL转换为SQlite

是否有可能从Windows上的免费工具从MySQL转换为SQLite?

如果没有find任何值,我如何获得MySQL中的SUM函数返回“0”?

假设我在MySQL中有一个简单的函数: SELECT SUM(Column 1) from Table WHERE Column 2='Test' 如果列2中没有条目包含文本“testing”,那么这个函数返回NULL,而我希望它返回0。 我知道有一个类似的问题在这里被问了几次,但是我还没有能够将答案适应于我的目的,所以我希望得到一些帮助来完成这个sorting。

重复密钥更新与插入相同

我搜查了周围,但没有发现是否有可能。 我有这个MySQL查询: INSERT INTO table (id,a,b,c,d,e,f,g) VALUES (1,2,3,4,5,6,7,8) 字段ID有一个“唯一索引”,所以不能有两个。 现在,如果数据库中已经存在相同的ID,我想更新它。 但是我真的必须重新指定所有这些领域,如: INSERT INTO table (id,a,b,c,d,e,f,g) VALUES (1,2,3,4,5,6,7,8) ON DUPLICATE KEY UPDATE a=2,b=3,c=4,d=5,e=6,f=7,g=8 要么: INSERT INTO table (id,a,b,c,d,e,f,g) VALUES (1,2,3,4,5,6,7,8) ON DUPLICATE KEY UPDATE a=VALUES(a),b=VALUES(b),c=VALUES(c),d=VALUES(d),e=VALUES(e),f=VALUES(f),g=VALUES(g) 我已经指定了插入中的所有内容… 一个额外的笔记,我想使用的工作,以获得ID! id=LAST_INSERT_ID(id) 我希望有人能告诉我最有效的方法是什么。

什么是我可以在MySQL中的BLOB列的数据的最大长度?

什么是我可以在MySQL中的BLOB列的数据的最大长度?

在MySQL中更改一个单元格的数据

我怎样才能改变一个MySQL表中的一个单元格的数据。 我有更新的问题,因为它使列中的所有参数更改,但我只想要一个更改。 怎么样?

强制删除mysql绕过外键约束

我试图从数据库中删除除了一个表的所有表,并最终有以下错误: 无法删除或更新父行:外键约束失败 当然,我可以反复试验看看那些关键的约束是什么,并最终删除所有的表,但我想知道是否有一个快速的方法来强制删除所有的表(因为我可以重新插入这些表不想删除)。 Google向我提供了一些build议如下方法的网站: mysql> SET foreign_key_checks = 0; mysql> drop table … mysql> SET foreign_key_checks = 1; 简单的答案是,它并没有真正做到这一招,因为我最终收到了同样的错误,而我能够删除更多的表。 我已经看到堆栈溢出的方式来获取所有的外键链接到某个表,但是这太耗费时间,除非我编写脚本(这是可行的,在没有其他select的情况下) 数据库是4.1,所以我不能使用DROP DATABASE 想法?