查看当前使用的数据库,可使用如下命令
mysql> select database(); #使用函数database()
mysql> show tables; #列头信息中可看出当前使用的db,格式为:Tables_in_[db_name]
mysql> status; #注意结果中的"Current database:"信息
查看系统中有哪些数据库,
mysql> show databases;
更换当前使用的数据库,
mysql> use db_name;
返回当前数据库下的所有表的名称
mysql> show tables;
或者直接用如下命令
mysql> show tables from db_name;
查看表结构,可使用如下命令
mysql> desc 表名;
mysql> describe 表名;
mysql> show columns from 表名;
mysql> show create table 表名;
或者,
mysql> use information_schema
mysql> select from columns where table_name='表名';
15个 MySQL 菜鸟问题
问题1:你如何确定 MySQL 是否处于运行状态?
答案: Debian 上运行命令 service mysql status,在RedHat 上运行命令 service mysqld status。然后看看输出即可。
问题2:如何开启或停止 MySQL 服务?
答案:运行命令 service mysqld start 开启服务;运行命令 service mysqld stop 停止服务。
问题3:如何通过 Shell 登入 MySQL?
答案:运行命令 mysql -u root -p
问题4:如何列出所有数据库?
答案:运行命令 show databases;
问题5: 如何切换到某个数据库并在上面工作?
答案:运行命令 use database_name; 进入名为 database_name 的数据库。
问题6:如何列出某个数据库内所有表?
答案:在当前数据库运行命令 show tables;
问题7:如何获取表内所有 Field 对象的名称和类型?
答案:运行命令 describe table_name;
问题8:如何删除表?
答案:运行命令 drop table table_name;
问题9:如何删除数据库?
答案:运行命令 drop database database-name;
问题10:如何查看表内所有数据?
答案:运行命令 select from table_name;
问题11:如何从表(比如 oc_users )中获取一个 field 对象(比如 uid)的所有数据?
答案:运行命令 select uid from oc_users;
问题12:假设你有一个名为 ‘xyz’ 的表,它存在多个字段,如 ‘createtime’ 和 ‘engine’。名为 engine 的字段由 ‘Memoty’ 和 ‘MyIsam’ 两种数值组成。如何只列出 ‘createtime’ 和 ‘engine’ 这两列并且 engine 的值为 ‘MyIsam’?
答案:运行命令 select create_time, engine from xyz where engine = ”MyIsam”;
问题13:如何列出表 ‘xrt’ 内 name 域值为 ‘tecmint’,web_address 域值为 ‘tecmintcom’ 的所有数据?
答案:运行命令 select from xrt where name = “tecmint” and web_address = “tecmintcom”;
问题14:如何列出表 ‘xrt’ 内 name 域值不为 ‘tecmint’,web_address 域值为 ‘tecmintcom’ 的所有数据?
答案:运行命令 select from xrt where name != "tecmint" and web_address = "tecmintcom";
问题15:如何知道表内行数?
答案:运行命令 select count() from table_name;
哈哈,我刚刚把本地的程序部署到阿里云上。
需要注意的是修改databasephp数据库配置文件和sysytemphp系统配置文件
然后尽量把MVC中的名字首字母大写,不然会出现404的错误。这是在linux上的问题。
有问题再密我吧
CodeIgniter的事务用法
注意事项:
如果使用query Strings的话,不能使用url辅助函数,需要自己构建URL,因为CI的URL辅助函数只是基于段格式的URL即indexphp/c/m/id这样的
CodeIgniter的数据库抽象允许你在支持事务安全的数据库表中使用事务。在MySQL中,你需要用InnoDB或BDB表而不是更常用的MyISAM。大多数其它的数据库平台都原生支持事务。
一起看看CodeIgniter的事务:
CodeIgniter 的事务方法
CodeIgniter 使用的事务方法与流行的数据库类ADODB所使用的处理过程非常相似。我们选择那种方法是因为它极大地简化了运行事务的处理过程。大多数情况下你只需要编写两行代码就行了。
传统上, 事务需要实现大量工作, 他们要求你随时跟踪你的查询, 并根据查询的成功或失败来决定 提交 还是 回滚 。这是特别麻烦的嵌套查询。相比之下, 我们实现了一种智能的事务系统, 它将自动地为你做这些事情(如果你选择手动管理你的事务, 这也是可以的, 但这确实没什么好处)。
运行事务
要使用事务来运行你的查询, 你可以使用如下所述的 $this->db->trans_start() 和 $this->db->trans_complete() 函数:
$this->db->trans_start();
$this->db->query('一条SQL查询');
$this->db->query('另一条查询');
$this->db->query('还有一条查询');
$this->db->trans_complete();
在 start/complete 函数之间, 你想运行多少条查询都可以, 根据任何给定查询的成功或失败, 它们将被提交或者回滚。
严格模式(Strict Mode)
默认情况下, CodeIgniter 以 严格模式 运行所有事务。当严格模式被启用时, 如果你正在运行多组的事务, 只要有一组失败, 所有组都会被回滚。如果严格模式被禁用, 每一组都被视为独立的组, 这意味着其中一个组的失败不会影响其它组。
严格模式能以下面的方式禁用:
$this->db->trans_strict(FALSE);
管理错误信息
如果你在你的 config/databasephp 文件中启用了错误报告, 当提交没有成功时, 你会看到一条标准的错误信息。如果调试被关闭, 你可以通过这种方式来管理你的错误信息:
$this->db->trans_start();
$this->db->query('AN SQL QUERY');
$this->db->query('ANOTHER QUERY');
$this->db->trans_complete();
if ($this->db->trans_status() === FALSE)
{
// 生成一条错误信息 或者使用 log_message() 函数来记录你的错误信息
}
禁用事务
当你使用 $this->db->trans_start() 时, 事务就已经被自动启用了。如果你想要禁用事务, 你可以使用 $this->db->trans_off() 来实现:
$this->db->trans_off()
$this->db->trans_start();
$this->db->query('AN SQL QUERY');
$this->db->trans_complete();
当事务被禁用的时候, 你的查询将被自动提交, 就像没有使用事务时那样。
测试模式(Test Mode)
你可以选择性地将事务系统设置到 "测试模式" , 这将导致你的查询被回滚 -- 尽管查询会生成有效结果。要使用测试模式, 只需将 $this->db->trans_start() 函数的第一个参数设置为 TRUE 即可:
$this->db->trans_start(TRUE); // 查询将被回滚
$this->db->query('AN SQL QUERY');
$this->db->trans_complete();
手动运行事务
如果你想要手动运行事务, 可以使用下面的方法:
$this->db->trans_begin();
$this->db->query('AN SQL QUERY');
$this->db->query('ANOTHER QUERY');
$this->db->query('AND YET ANOTHER QUERY');
if ($this->db->trans_status() === FALSE)
{
$this->db->trans_rollback();
}
else
{
$this->db->trans_commit();
}
说明: 手动运行事务时, 请务必使用 $this->db->trans_begin() 函数, 而 不是 $this->db->trans_start() 更多问题到问题求助专区<>
$this->db->select()
可接受一个可选的第二个参数。如果你把它设为FALSE,
CodeIgniter
将不会使用反引号保护你的字段或者表名。这在进行复合查询时很有用。$this->db->select('(SELECT
SUM(paymentsamount)
FROM
payments
WHERE
paymentsinvoice_id=4')
AS
amount_paid',
FALSE);
$query
=
$this->db->get('mytable');这个问题我解决了
codeigniter中的脚手架 从 CodeIgniter 160 开始,脚手架功能已经废弃掉了
CodeIgniter 的脚手架功能使您可以在开发过程中方便快速的在数据库中添加、删除、修改数据。
非常重要:脚手架只可以在开发过程中使用。因为它提供了非常少的安全保护,所以可以访问到您的 CodeIgniter 站点的任何人都可以添加删除或修改您数据库中的数据。如果您使用脚手架,那么请确认您在使用完之后一定要立刻禁止它。千万不要在上线的站点中激活它,并且一定要在使用前给它设置一个密匙(secret word)。
为什么要使用脚手架?
这是一个经典场景:开发过程中,你创建了一个数据表并且希望快速地插入一些数据。没有“脚手架”时,你要么写些插入命令,要么就使用如phpMyAdmin之类的数据库管理工具。用CodeIgniter的脚手架特性,你可以快捷地通过浏览器添加数据。当你用完时,也可以轻易删除掉这些数据。
设置一个密匙(Secret Word)
激活脚手架之前,要先设置一个密匙。我们将通过这个密匙来启动脚手架,所以要用一些不常见的词防止被人猜到。
设置密匙,打开文件 application/config/routesphp 找到下面字段:
$route['scaffolding_trigger'] = '';
把值替换成你的密匙
注意: 脚手架密匙 不能 以下划线开头。
激活脚手架
注意:本页信息假设你已经知道 控制器 是怎么工作的了, 并且你已经有一个正在运行的控制器。同时,我们假设你已经设置好CodeIgniter使之能自动连上 数据库 。如果不是,此页的信息不会很有价值,所以我们建议你先阅读相关内容。最后,我们假设你已经知道什么叫类的构造函数。否则,请阅读 控制器 的最后一节。
激活脚手架,你的控制器构造函数应该有像这样的代码:
<phpclass Blog extends Controller { function Blog() { parent::Controller(); $this->load->scaffolding('table_name'); }}>
此处的 table_name 为你想 *** 作的数据表名 (表名,不是数据库名)
一旦初始化脚手架,你可以以这样的URL来访问它:
examplecom/indexphp/class/secret_word/
比如,控制器名为 Blog ,密匙为 abracadabra , 你可以这样访问脚手架:
examplecom/indexphp/blog/abracadabra/
脚手架界面是简单明了的。你可以添加,修改或删除数据。
最后需要注意的地方:
脚手架特性只能 *** 作有主键的表,因为这是各种数据库函数所必需的信息。
以上就是关于如何查看mysql数据库全部的内容,包括:如何查看mysql数据库、codeigniter工程怎么部署、ci 事务只能用query等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)