sql

阅读 / 问答 / 标签

安装了xampp后为什么还是不能从机器命令行页面登陆mysql

xampp的服务肯定是打不开的,因为你现在显示的是iis上的错误,根本不是apache的,1、如果同用80端口,请检查端口冲突,把iis服务关闭2、如果用的不是同一个端口,那localhost就应该变成localhost:端口号/xampp/index.php

xampp的mysql启动失败怎么办

今天运行XAMPP启动MySQL数据库时出现错误:21:37:31 [mysql] Status change detected: stopped21:37:31 [mysql] Error: MySQL shutdown unexpectedly.21:37:31 [mysql] This may be due to a blocked port, missing dependencies, 21:37:31 [mysql] improper privileges, a crash, or a shutdown by another method.21:37:31 [mysql] Press the Logs button to view error logs and check21:37:31 [mysql] the Windows Event Viewer for more clues21:37:31 [mysql] If you need more help, copy and post this21:37:31 [mysql] entire log window on the forumss有遇到这类问题的朋友可以试试小编的方法,反正我是解决了。打开你的xampp安装目录,这里小编把它安装在D:Program Filesxampp目录。下拉鼠标,找到Mysql文件夹,这里就是你的本地MySQL数据库,点击打开。继续打开data文件夹,data一般是指保存数据的文件夹,也可能是软件生成的临时文件夹。这里有个文件名为 ibdata1 的文件 ,ibdata就是用来储存文件的数据的。这里我们把它删除掉。重新运行XAMPP程序,启动MySQL数据库。系统提示:Status change detected: running说明MySQL数据库启动成功。7再次进入D:Program Filesxamppmysqldata文件目录我们可以看到,系统又重新生成了一个 ibdata1 文件。

xampp mysql怎么连接数据库

方法/步骤1在已经安装了XAMPP之后,会在你安装的目录下面出现”XAMPP“文件夹,这个文件夹就是整个XAMPP集成环境的目录。我们先进入这个目录,然后会看到带有XAMPP标志的xampp-control.exe执行文件。2双击打开xampp-control.exe,点击开启Apache和MySQL,这样我们就开启服务了,之后我们可以通过图形界面或者DOS界面使用MySQL数据库,首先介绍DOS界面使用。3使用XAMPP下的DOS界面,用命令操作MySQL,我们可以在开启服务后,从图中红色框框内的”shell“按钮进入DOS界面,对数据库进行操作4进入DOS界面后,使用命令进入数据库,XAMPP初始化的root密码是空,所以可以不用输入密码直接进入,之后就可以使用数据库了。5另外一种方法是使用XAMPP的图形界面,这个需要通过浏览器打开,在开启服务之后,我们在浏览器中输入”http://127.0.0.1“之后会进入XAMPP的首页。6进入首页后,选择phpMyAdmin,进入管理界面7进入之后就是这个样子,左边红色框框内是你已经有的数据库,选择你要使用和编辑的数据库就可以进入该数据库进行管理了。8下面看看如何添加数据库,点击”数据库“之后,会显示出您现在有的数据库,您可以从这里进入数据库对数据进行管理,也可以在红色框框内输入数据库的名称与类型之后点击”创建“,一个新的数据库的就创建成功了。9创建好一个数据库后,我们给这个数据库建立表格,在红色框框内输入相应信息后点击”执行“,表格就创建好了10创建表格之后,就对表格的列进行属性设置11设置完列属性之后,表格就算建立完成了,我们可以在数据库中看到我们的表,之后我们就可以向表格中添加行了。12点击”插入“可以对表格添加行,点击浏览,可以看到表格中的内容注意事项进入MySQL数据库之前,记得开启服务MySQL数据库root用户密码如果被修改,会导致无法通过网页图形界面进入phpMyAdmin对数据库进行管理

sql中login是什么意思

登录嘛,这个很简单登陆数据库是需要用户名密码登陆的,login就是登陆的意思login代表的是登陆信息login [lɑg"?n]  n.注册,登录,进入系统  vt.登录;注册  vi.登录;注册  词汇:  1、loginid 登录id  2、remotelogin 远程登录login代表的是登陆信息

如何解决postgresql 错误:08p01:无效的信息格式

Appendix A. PostgreSQL错误代码PostgreSQL服务器发出的所有消息都赋予 了五个字符的错误代码,这些代码遵循 SQL 的"SQLSTATE" 代码的习惯。需要知道发生了什么错误条件的应用通常应该测试错误代码, 而不是查看文本错误信息。这些错误代码轻易不会随着PostgreSQL 的版本更新而修改,并且一般也不会随着错误信息的本地化而发生修改。 请注意有些(但不是全部)PostgreSQL生成的错误代码是 由 SQL 标准定义的;有些标准没有定义的错误条件是发明的或者是从其它数据库借来的。根据标准,错误代码的头两个字符表示错误类别, 而后三个字符表示在该类别内特定的条件。因此, 那些不能识别特定错误代码的应用仍然可以从错误类别中推断要做什么。Table A-1里面列出了PostgreSQL 8.2.3 定义的所有错误代码(有些实际上目前并没有使用, 但是 SQL 标准定义了)。错误类别也列出在此。对于每个错误类别都有个 "标准"的错误代码,它的最后三个字符是000。 这个代码只用于那些落在该类别内,但是没有赋予任何更准确的代码的错误条件。PL/pgSQL用于每个错误代码的条件名和表中显示的措辞相同, 只是用下划线代替了空白。比如,代码22012, DIVISION BY ZERO 的条件名是DIVISION_BY_ZERO。 条件名大小写无关。(请注意PL/pgSQL并不识别警告,这一点和错误、条件名正相反;那些是 00, 01, 02 类别。)Table A-1. PostgreSQL 错误代码错误代码含义常量名Class 00 — 成功完成 00000 成功完成 successful_completion Class 01 — 警告 01000 警告 warning 0100C 返回了动态结果 dynamic_result_sets_returned 01008 警告,隐含补齐了零比特位 implicit_zero_bit_padding 01003 在集合函数里消除null null_value_eliminated_in_set_function 01007 没有赋予权限 privilege_not_granted 01006 没有撤销权限 privilege_not_revoked 01004 字符串数据在右端截断 string_data_right_truncation 01P01 废弃的特性 deprecated_feature Class 02 — 没有数据(按照 SQL 标准的要求,这也是警告类) 02000 没有数据 no_data 02001 返回了没有附加动态结果集 no_additional_dynamic_result_sets_returned Class 03 — SQL语句尚未结束 03000 SQL语句尚未结束 sql_statement_not_yet_complete Class 08 — 连接异常 08000 连接异常 connection_exception 08003 连接不存在 connection_does_not_exist 08006 连接失败 connection_failure 08001 SQL 客户端不能建立 SQL 连接 sqlclient_unable_to_establish_sqlconnection 08004 SQL 服务器拒绝建立 SQL 连接 sqlserver_rejected_establishment_of_sqlconnection 08007 未知的事务解析 transaction_resolution_unknown 08P01 违反协议 protocol_violation Class 09 — Triggered Action Exception触发器动作异常 09000 触发器动作异常 triggered_action_exception Class 0A — 不支持特性 0A000 不支持此特性 feature_not_supported Class 0B — 非法事务初始化 0B000 非法事务初始化 invalid_transaction_initiation Class 0F — 定位器异常 0F000 定位器异常 locator_exception 0F001 非法的定位器声明 invalid_locator_specification Class 0L — 非法赋权者 0L000 非法赋权者 invalid_grantor 0LP01 非法赋权操作 invalid_grant_operation Class 0P — 非法角色声明 0P000 非法角色声明 invalid_role_specification Class 20 — 未发现情况 20000 未发现情况 case_not_found Class 21 — 势违例 21000 势违例 cardinality_violation Class 22 — 数据异常 22000 数据异常 data_exception 2202E 数组下标错误 array_subscript_error 22021 字符不在规定范围内 character_not_in_repertoire 22008 日期时间字段溢出 datetime_field_overflow 22012 被零除 division_by_zero 22005 赋值中出错 error_in_assignment 2200B 逃逸字符冲突 escape_character_conflict 22022 INDICATOR OVERFLOW指示器溢出 indicator_overflow 22015 内部字段溢出 interval_field_overflow 2201E 对数运算的非法参数 invalid_argument_for_logarithm 22014 NTILE函数的无效参数 invalid_argument_for_ntile_function 22016 N倍函数的无效参数 invalid_argument_for_nth_value_function 2201F 指数函数的无效参数 invalid_argument_for_power_function 2201G BUCKET函数的非法参数 invalid_argument_for_width_bucket_function 22018 类型转换时非法的字符值 invalid_character_value_for_cast 22007 非法日期时间格式 invalid_datetime_format 22019 非法的逃逸字符 invalid_escape_character 2200D 非法的逃逸字节 invalid_escape_octet 22025 非法逃逸序列 invalid_escape_sequence 22P06 非标准使用逃逸字符 nonstandard_use_of_escape_character 22010 非法指示器参数值 invalid_indicator_parameter_value 22023 非法参数值 invalid_parameter_value 2201B 非法正则表达式 invalid_regular_expression 2201W 无效的行数限制 invalid_row_count_in_limit_clause 2201X 在结果抵消子句中无效的行数 invalid_row_count_in_result_offset_clause 22009 非法时区显示值 invalid_time_zone_displacement_value 2200C 逃逸字符的非法使用 invalid_use_of_escape_character 2200G 最相关类型不匹配 most_specific_type_mismatch 22004 不允许 NULL 值 null_value_not_allowed 22002 NULL 值不能做指示器参数 null_value_no_indicator_parameter 22003 数字值超出范围 numeric_value_out_of_range 22026 字符串数据长度不匹配 string_data_length_mismatch 22001 字符串数据右边被截断 string_data_right_truncation 22011 抽取子字符串错误 substring_error 22027 截断错误 trim_error 22024 未结束的 C 字符串 unterminated_c_string 2200F 零长度的字符串 zero_length_character_string 22P01 浮点异常 floating_point_exception 22P02 非法文本表现形式 invalid_text_representation 22P03 非法二进制表现形式 invalid_binary_representation 22P04 错误的COPY文件格式 bad_copy_file_format 22P05 不可翻译字符 untranslatable_character 2200L 不是一个XML文档 not_an_xml_document 2200M 无效的XML文档 invalid_xml_document 2200N 无效的XML内容 invalid_xml_content 2200S 无效的XML评论 invalid_xml_comment 2200T 无效的XML处理指令 invalid_xml_processing_instruction Class 23 — 违反完整性约束 23000 违反完整性约束 integrity_constraint_violation 23001 约束限制 restrict_violation 23502 NOT NULL VIOLATION违反非空 not_null_violation 23503 违反外键约束 foreign_key_violation 23505 违反唯一约束 unique_violation 23514 违反检查 check_violation 23P01 违反排除 exclusion_violation Class 24 — 非法游标状态 24000 非法游标状态 invalid_cursor_state Class 25 — 非法事务状态 25000 非法事务状态 invalid_transaction_state 25001 活跃的SQL状态 active_sql_transaction 25002 分支事务已经激活 branch_transaction_already_active 25008 持有的指针要求同样的隔离级别 held_cursor_requires_same_isolation_level 25003 对分支事务的不恰当的访问方式 inappropriate_access_mode_for_branch_transaction 25004 对分支事务的不恰当的隔离级别 inappropriate_isolation_level_for_branch_transaction 25005 分支事务没有活跃的SQL事务 no_active_sql_transaction_for_branch_transaction 25006 只读的SQL事务 read_only_sql_transaction 25007 不支持混和的模式和数据语句 schema_and_data_statement_mixing_not_supported 25P01 没有活跃的SQL事务 no_active_sql_transaction 25P02 在失败的SQL事务中 in_failed_sql_transaction Class 26 — 非法SQL语句名 26000 非法SQL语句名 invalid_sql_statement_name Class 27 — 触发数据更改违规 27000 触发数据更改违规 triggered_data_change_violation Class 28 — 非法授权声明 28000 非法授权声明 invalid_authorization_specification 28P01 非法密码 invalid_password Class 2B — 依然存在依赖的优先级描述符 2B000 依然存在依赖的优先级描述符 dependent_privilege_descriptors_still_exist 2BP01 依赖性对象仍然存在 dependent_objects_still_exist Class 2D — 非法的事务终止 2D000 非法的事务终止 invalid_transaction_termination Class 2F — SQL过程异常 2F000 SQL过程异常 sql_routine_exception 2F005 执行的函数没有返回语句 function_executed_no_return_statement 2F002 不允许修改SQL数据 modifying_sql_data_not_permitted 2F003 企图使用禁止的SQL语句 prohibited_sql_statement_attempted 2F004 不允许读取SQL数据 reading_sql_data_not_permitted Class 34 — 非法指针名 34000 非法指针名 invalid_cursor_name Class 38 — 外部过程异常 38000 外部过程异常 external_routine_exception 38001 不允许包含的SQL containing_sql_not_permitted 38002 不允许修改SQL数据 modifying_sql_data_not_permitted 38003 企图使用禁止的SQL语句 prohibited_sql_statement_attempted 38004 不允许读取SQL数据 reading_sql_data_not_permitted Class 39 — 外部过程调用异常 39000 外部过程调用异常 external_routine_invocation_exception 39001 返回了非法的SQL状态 invalid_sqlstate_returned 39004 不允许使用NULL null_value_not_allowed 39P01 违反触发器协议 trigger_protocol_violated 39P02 违反 SRF 协议 srf_protocol_violated Class 3B — 保存点异常 3B000 保存点异常 savepoint_exception 3B001 无效的保存点声明 invalid_savepoint_specification Class 3D — 非法目录名 3D000 非法目录名 invalid_catalog_name Class 3F — 非法模式名 3F000 非法模式名 invalid_schema_name Class 40 — 事务回滚 40000 事务回滚 transaction_rollback 40002 违反事务完整性约束 transaction_integrity_constraint_violation 40001 串行化失败 serialization_failure 40003 不知道语句是否结束 statement_completion_unknown 40P01 侦测到死锁 deadlock_detected Class 42 — 语法错误或者违反访问规则 42000 语法错误或者违反访问规则 syntax_error_or_access_rule_violation 42601 语法错误 syntax_error 42501 权限不够 insufficient_privilege 42846 无法进行类型转换 cannot_coerce 42803 分组错误 grouping_error 42P20 开窗口错误 windowing_error 42P19 非法递归 invalid_recursion 42830 非法的外键 invalid_foreign_key 42602 非法名称 invalid_name 42622 名称过长 name_too_long 42939 保留名称 reserved_name 42804 数据类型不匹配 datatype_mismatch 42P18 模糊数据类型 indeterminate_datatype 42809 错误的对象类型 wrong_object_type 42703 未定义的字段 undefined_column 42883 未定义的函数 undefined_function 42P01 未定义的表 undefined_table 42P02 未定义的参数 undefined_parameter 42704 未定义对象 undefined_object 42701 重复的字段 duplicate_column 42P03 重复的游标 duplicate_cursor 42P04 重复的数据库 duplicate_database 42723 重复的函数 duplicate_function 42P05 重复的预备语句 duplicate_prepared_statement 42P06 重复的模式 duplicate_schema 42P07 重复的表 duplicate_table 42712 重复的别名 duplicate_alias 42710 重复的对象 duplicate_object 42702 模糊的字段 ambiguous_column 42725 模糊的函数 ambiguous_function 42P08 模糊的参数 ambiguous_parameter 42P09 模糊的别名 ambiguous_alias 42P10 非法字段引用 invalid_column_reference 42611 非法字段定义 invalid_column_definition 42P11 非法游标定义 invalid_cursor_definition 42P12 非法数据库定义 invalid_database_definition 42P13 非法函数定义 invalid_function_definition 42P14 非法预备语句定义 invalid_prepared_statement_definition 42P15 非法模式定义 invalid_schema_definition 42P16 非法表定义 invalid_table_definition 42P17 非法对象定义 invalid_object_definition Class 44 — 违反 WITH CHECK 选项 44000 违反 WITH CHECK 选项 with_check_option_violation

安卓sql创建两个表,有一个演示时崩溃,no such table

边好像可以呀 介绍一个db编辑器 sqliteSpy 这可以在里面写sql语句测试 我就是在里面测试通过的!

如何mysql禁止创建新用户

使用户不具有Create User权限或者deny Create User权限下面是权限列表mysql> show privileges G*************************** 1. row ***************************Privilege: Alter Context: Tables Comment: To alter the table*************************** 2. row ***************************Privilege: Alter routine Context: Functions,Procedures Comment: To alter or drop stored functions/procedures*************************** 3. row ***************************Privilege: Create Context: Databases,Tables,Indexes Comment: To create new databases and tables*************************** 4. row ***************************Privilege: Create routine Context: Databases Comment: To use CREATE FUNCTION/PROCEDURE*************************** 5. row ***************************Privilege: Create temporary tables Context: Databases Comment: To use CREATE TEMPORARY TABLE*************************** 6. row ***************************Privilege: Create view Context: Tables Comment: To create new views*************************** 7. row ***************************Privilege: Create user Context: Server Admin Comment: To create new users*************************** 8. row ***************************Privilege: Delete Context: Tables Comment: To delete existing rows*************************** 9. row ***************************Privilege: Drop Context: Databases,Tables Comment: To drop databases, tables, and views*************************** 10. row ***************************Privilege: Event Context: Server Admin Comment: To create, alter, drop and execute events*************************** 11. row ***************************Privilege: Execute Context: Functions,Procedures Comment: To execute stored routines*************************** 12. row ***************************Privilege: File Context: File access on server Comment: To read and write files on the server*************************** 13. row ***************************Privilege: Grant option Context: Databases,Tables,Functions,Procedures Comment: To give to other users those privileges you possess*************************** 14. row ***************************Privilege: Index Context: Tables Comment: To create or drop indexes*************************** 15. row ***************************Privilege: Insert Context: Tables Comment: To insert data into tables*************************** 16. row ***************************Privilege: Lock tables Context: Databases Comment: To use LOCK TABLES (together with SELECT privilege)*************************** 17. row ***************************Privilege: Process Context: Server Admin Comment: To view the plain text of currently executing queries*************************** 18. row ***************************Privilege: Proxy Context: Server Admin Comment: To make proxy user possible*************************** 19. row ***************************Privilege: References Context: Databases,Tables Comment: To have references on tables*************************** 20. row ***************************Privilege: Reload Context: Server Admin Comment: To reload or refresh tables, logs and privileges*************************** 21. row ***************************Privilege: Replication client Context: Server Admin Comment: To ask where the slave or master servers are*************************** 22. row ***************************Privilege: Replication slave Context: Server Admin Comment: To read binary log events from the master*************************** 23. row ***************************Privilege: Select Context: Tables Comment: To retrieve rows from table*************************** 24. row ***************************Privilege: Show databases Context: Server Admin Comment: To see all databases with SHOW DATABASES*************************** 25. row ***************************Privilege: Show view Context: Tables Comment: To see views with SHOW CREATE VIEW*************************** 26. row ***************************Privilege: Shutdown Context: Server Admin Comment: To shut down the server*************************** 27. row ***************************Privilege: Super Context: Server Admin Comment: To use KILL thread, SET GLOBAL, CHANGE MASTER, etc.*************************** 28. row ***************************Privilege: Trigger Context: Tables Comment: To use triggers*************************** 29. row ***************************Privilege: Create tablespace Context: Server Admin Comment: To create/alter/drop tablespaces*************************** 30. row ***************************Privilege: Update Context: Tables Comment: To update existing rows*************************** 31. row ***************************Privilege: Usage Context: Server Admin Comment: No privileges - allow connect only31 rows in set (0.00 sec)mysql>

什么是SQL数据库

SQL是StructuredQuevyLanguage(结构化查询语言)的缩写。SQL是专为数据库而建立的操作命令集,是一种功能齐全的数据库语言。在使用它时,只需要发出“做什么”的命令,“怎么做”是不用使用者考虑的。SQL功能强大、简单易学、使用方便,已经成为了数据库操作的基础,并且现在几乎所有的数据库均支持SQL。##1二、SQL数据库数据体系结构SQL数据库的数据体系结构基本上是三级结构,但使用术语与传统关系模型术语不同。在SQL中,关系模式(模式)称为“基本表”(basetable);存储模式(内模式)称为“存储文件”(storedfile);子模式(外模式)称为“视图”(view);元组称为“行”(row);属性称为“列”(column)。名称对称如^00100009a^:##1三、SQL语言的组成在正式学习SQL语言之前,首先让我们对SQL语言有一个基本认识,介绍一下SQL语言的组成:1.一个SQL数据库是表(Table)的集合,它由一个或多个SQL模式定义。2.一个SQL表由行集构成,一行是列的序列(集合),每列与行对应一个数据项。3.一个表或者是一个基本表或者是一个视图。基本表是实际存储在数据库的表,而视图是由若干基本表或其他视图构成的表的定义。4.一个基本表可以跨一个或多个存储文件,一个存储文件也可存放一个或多个基本表。每个存储文件与外部存储上一个物理文件对应。5.用户可以用SQL语句对视图和基本表进行查询等操作。在用户角度来看,视图和基本表是一样的,没有区别,都是关系(表格)。6.SQL用户可以是应用程序,也可以是终端用户。SQL语句可嵌入在宿主语言的程序中使用,宿主语言有FORTRAN,COBOL,PASCAL,PL/I,C和Ada语言等。SQL用户也能作为独立的用户接口,供交互环境下的终端用户使用。##1四、对数据库进行操作SQL包括了所有对数据库的操作,主要是由4个部分组成:1.数据定义:这一部分又称为“SQLDDL”,定义数据库的逻辑结构,包括定义数据库、基本表、视图和索引4部分。2.数据操纵:这一部分又称为“SQLDML”,其中包括数据查询和数据更新两大类操作,其中数据更新又包括插入、删除和更新三种操作。3.数据控制:对用户访问数据的控制有基本表和视图的授权、完整性规则的描述,事务控制语句等。4.嵌入式SQL语言的使用规定:规定SQL语句在宿主语言的程序中使用的规则。下面我们将分别介绍:##2(一)数据定义SQL数据定义功能包括定义数据库、基本表、索引和视图。首先,让我们了解一下SQL所提供的基本数据类型:(如^00100009b^)1.数据库的建立与删除(1)建立数据库:数据库是一个包括了多个基本表的数据集,其语句格式为:CREATEDATABASE<数据库名>〔其它参数〕其中,<数据库名>在系统中必须是唯一的,不能重复,不然将导致数据存取失误。〔其它参数〕因具体数据库实现系统不同而异。例:要建立项目管理数据库(xmmanage),其语句应为:CREATEDATABASExmmanage(2)数据库的删除:将数据库及其全部内容从系统中删除。其语句格式为:DROPDATABASE<数据库名>例:删除项目管理数据库(xmmanage),其语句应为:DROPDATABASExmmanage2.基本表的定义及变更本身独立存在的表称为基本表,在SQL语言中一个关系唯一对应一个基本表。基本表的定义指建立基本关系模式,而变更则是指对数据库中已存在的基本表进行删除与修改。

sql数据库的问题

这么罗嗦Response.Expires = 0 禁止缓存dim conn 定义连接

什么是SQL数据库

结构化查询语言

如何查看mysql的database

有专门的工具,比如navicat

SQL如何备份大容量数据库

数据库备份介绍1、备份位置 在SQL Server上,有多种备份位置可以选择,如本地磁盘,网络磁盘,远程地址,磁带等。各种备份位置均有自己的优点和缺点。2、逻辑备份设备在SQL Server上,可以通过创建逻辑备份设备来完成备份。使用逻辑备份设备的好处是,当变更备份地址时,不需要更改备份脚本,只需要更改逻辑备份设备的定义即可。创建逻辑备份设备的脚本如下: SQL code EXEC sp_adddumpdevice @devtype="disk",@logicalname="MYBackup",@physicalname="D:ackupmydb.bak"删除备份设备的脚本: SQL code Sp_dropdevice @logicalname="MYBackup"上述脚本只是删除逻辑备份设备的定义,下述脚本将同时删除备份文件: SQL code Sp_dropdevice @logicalname="MYBackup",@devfile="DELFILE"使用逻辑备份设备的方法如下: SQL code Backup database mydb to MYBackup当然,还可在逻辑备份设备上指定过期时间等备份属性,如:SQL code Backup database mydb to MYBackup WITH EXPIREDATE="13/01/2010"或: SQL code BACKUP DATABASE mydb to MYBackup WITH RETAINDAYS=73、备份集与存储集每一份备份包含于一个备份集,而一个备份集包含于一个存储集。通过系统GUI进行备份时,SQL Server会自动指定备份集和存储集,目的则是为了简化管理。用T-SQL显示指定则用如下语法:SQL code BACKUP DATABASE mydb to MYBackup WITH RETAINDAYS=7,NAME="FULL",MEDIANAME="ALLBackups"NAMEs是指备份集名称,MEDIANAME是指存储集名称。4、全备份不管恢复模式是哪一个,所有的备份都必须要有一个全备份,特别是日志备份和差异备份,如果没有全备份的话,将无法进行恢复。简单的全备份脚本如下所示,也可以通过维护计划来指定全备份: SQL code BACKUP DATABASE mydb to DISK="D:Backupmydb.bak"但需要注意的是,上述命令是将数据库备份附加到当前的存在的文件上,如果不存在则创建它,并不会覆盖原有文件。要覆盖同名的备份文件,需要指定INIT参数。SQL code BACKUP DATABASE mydb to DISK="D:Backupmydb.bak" WITH INIT5、日志备份在完全恢复模式或者大容量日志恢复模式下,日志备份不仅仅是恢复的需要,同时也是手工管理事务日志文件的一种方式。如果从不进行备份的话,在完全恢复模式或者大容量恢复模式下,事务日志将会持续增长,直至消耗完所在磁盘。日志备份的脚本如下: SQL code BACKUP LOG mydb_log TO DISK="D:ackupmydb.trn"需要养成使用.trn为日志备份的扩展名的习惯。每个在数据库上的动作都会被安排一个Log Sequence Number (LSN)。如果需要还原到指定的时间点,需要有持续的LSN记录。也就是说,在完全恢复模式或者大容量日志模式下,一个不被打断的事务日志备份链是恢复数据库的基本要求。6、差异备份使用日志备份来恢复时,无疑是一个很慢的过程,特别是上一个全备份的历史比较悠久时。使用差异备份,便能缩短恢复时间。事实上,差异备份只是BACKUP DATABASE的一个选项,如下:SQL code BACKUP DATABASE mydb TO DISK="D:ackupmydb.dif" WITH DIFFERENTIAL,INIT进行数据库恢复时,先恢复数据库全备份,再恢复数据库差异备份,最后才恢复日志备份。差 异备份是与上一次全备份紧密相连的,不管期间有多少次日志备份和差异备份,差异备份还是会从上一次全备开始备份。因此,经常会遇到这样的一种情况,在生产 库上需要临时使用数据库时,便用BACKUP DATABASE … TO DISK=".."进行了一个备份,下一次的差异备份便会以这回的全备为准,如果过后把这个临时全备删除掉后,后面的差异备份就没用了。差异备份并不意味着磁盘空间肯定会少,这取决于实际情况。当期间大量操作发生时,差异备份还是会变得很大。7、错误检测在备份过程中,备份进程会同时验证数据,或者校验不完整页(torn page),或者验证校验和(checksum)。要使用该功能,需要激活该选项。不完整页检测(Torn-page dection)仅仅检查每一个页看是否已经写完成。如果发现一个页只有部分被写入,那么就将其标记为torn。校验和验证(checksum validation)是一种新的页验证机制。它会为每个页添加一个值来表明该页实际的大小。虽然看起来是个代价很高影响性能的操作,但事实上,它的效率非常高,与torn-page差不多。备份进程在备份数据库时,会通过比较在数据库里的和随着备份页写入硬盘时这两个之间的值来进行验证。但是,这个验证并不是自动完成的,需要显示指定,在GUI页面上是个选项。如果通过T-SQL来备份的话,语句如下:SQL code BACKUP DATABASE mydb TO DISK="D:datamydb.bak" WITH CHECKSUM如果备份过程中,发现了错误,SQL Server会错误信息写入MSDB上的SUSPECT_PAGE表里面。同时,在默认情况下,备份行为会停止的(STOP_ON_ERROR),以便管理员排查错误。但 备份过程中的校验和验证还有另外一个选项(CONTINUE_ON_ERROR),也就是说,如果发现错误,备份过程并不会中断,而是将错误页信息记录在 MSDB..SUSPECT_PAGE上而已。需要注意的是,SUSPECT_PAGE表是有行限制的,最多只能达到1000行,如果达到了的话,备份同 样会失败。激活校验和验证的话,很明显会影响备份的性能。但还是很有必要的。8、安全备份完全备份和日志备份语句还支持使用密码属性,如:SQL code BACKUP DATABASE mydb TO DISK="D:mydb.bak" WITH PASSWORD="mydb"所指定的密码是很容易破解的。因此,如果确实需要对某些备份数据进行加密的话,可以将备份存放于加密的文件系统或者其它安全的存储设备上。同时,SQL Server还提供了对真实列进行加密的功能。该加密功能是工业标准。9、条带备份有些情况下,单独一个硬盘无法存储一个完整的数据库备份时,可以将数据库备份分成多个部分存储在不同的磁盘上,这种备份方式成为条带备份。使用条带备份的优点很明确,就是能很好的利用空间,但如果某部分备份丢失或者损坏,那整个备份将无效。其语句如下:SQL code BACKUP DATABASE mydb TO DISK="D:mydb.bak",DISK="E:mydb.bak" WITH INIT,CHECKSUM,CONTINUE_ON_ERROR上述D盘和E盘上的备份是不可分割的。10、镜像备份与条带备份在多个磁盘上保留同一份备份不同的是,镜像备份是在不同磁盘上保留多份备份。其语句如下:SQL code BACKUP DATABASE mydb TO DISK="D:mydb.bak"MIRROR TO DISK="E:mydb.bak"WITH INIT,CHECKSUM,CONTINUE_ON_ERROR在实际情况下,对日志备份采取镜像备份方式会比较合适。11、COPY-ONLY 备份在差异备份里曾提到过,差异备份是建立在上一个全备份的基础上的。因此如果在一个事先安排好的备份计划里,如果在全备份和差异备份之间再进行了一次全备份后,其差异备份会被打断,如果把临时全备份删除掉后,就产生了数据丢失。在SQL SERVER 2005以后,SQL SERVER提供了一个选项copy-only.使用copy-only选项进行的全备份便不会打算原先的备份计划,语句如下:SQL code BACKUP DATABASE mydb TO DISK="D:mydb.bak"WITH INIT,CHECKSUM,COPY_ONLY三、文件和文件组备份在SQL SERVER 7.0以后,SQL Server提供了filegroup的概念。文件组不仅仅提供了一个逻辑的存储地址,还允许将不同的表和索引放在不同的文件组上来提高性能和减少备份时间。在数据存储概述上,提到了数据库有三类数据文件,一般来说,数据库至少需要两个(.mdf和.ldf)或者更多的文件。SQL Server不仅允许有多个文件存在(.ldf),还允许多个文件组存在。一个文件组可以有多个文件,每个文件需要仔细规划好初始大小及增量。1、默认文件组在创建对象时,如果未明确指定文件组,那么该对象将会存放在默认的文件组上。在默认情况下,默认的文件组是primary,但由于primary文件组不仅可以包含用户数据,同时还存储着数据库结构等技术信息,因此一般建议添加额外的一个文件组,并将其指定为默认文件组。SQL Server只能有一个默认的文件组。修改默认文件组的语句如下: SQL code ALTER DATABASE mydb MODIFY FILEGROUP mydb DEFAULT;2、为对象指定文件组当创建表或者索引时,不管是用户还是系统都需要将表或索引放在某个文件组上。如果在创建表或索引时指定文件组,那么表或索引将会存储在指定的文件组上,而不是默认的文件组。其指定语句如下: SQL code CREATE TABLE test( [id] int,[notes] text) on mydbdata也可以通过GUI创建表的页面来指定文件组。3、将对象迁移至指定文件组如果需要变更对象的存储位置,最简单的方式则是通过GUI属性页面来进行修改通过该方法,可以直观的看到对象的迁移过程。同时也可以通过T-SQL来修改,例如: SQL code ALTER TABLE test drop constraint PK_test WITH (MOVE TO DATA)4、备份数据文件备份数据文件同样可以通过BACKUP DATABASE语句来实现。如下: SQL code BACKUP DATABASE mydb FILE="D:Datamydb.ndf" TO DISK="E:Backupmydbdata.bak"上述语句相当于数据文件级别的全备份,与数据库级别的备份类似,文件级别上的备份也有差异备份,当然前提是要有相对应的文件全备份。差异备份的语句如下:SQL code BACKUP DATABASE mydb FILE="D:Datamydb.ndf"WITH DIFFERENTIALTO DISK="E:Backupmydbdata_dif.bak"5、备份文件组与单独备份文件类似,也可以对文件组进行类似的备份操作。备份文件组的方式也有两种,一种是通过GUI界面指定,一种则是通过T-SQL。T-SQL的语句如下: SQL code BACKUP DATABASE mydb FILEGROUP="PRIMARY" TO DISK="E:Backupmydbpri.bak"6、不完全备份(partial backup)在文件组备份上,不完全备份其实相当于完全备份,可以通过指定关键字READ_WRITE_FILEGROUPS来实现不完全备份。语句如下: SQL code BACKUP DATABASE mydb READ_WRITE_FILEGROUPS TO DISK="D:mydb.bak"那不完全备份到底是什么意思呢?什么时候需要不完全备份?如果对一个文件组设置了只读,而这只读的文件组又需要进行一次备份,这时,可以不用BACKUP DATABASE语句进行备份,只需要挑个时间停止实例,然后执行不完全备份。

mysql 怎么选择database

use 数据库;然后你再增删改查

MySQL全备份如何只恢复一个库或者一个表?

在实际工作中,一个MySQL实例中可能有多个database。而我们备份时,通常采用完全备份,将所有database都备份到一个文件中。 但是,偶尔会遇到只恢复一个database或者一个表的情况。怎么解决呢?科多大数据带你来看看。 一、利用全备恢复一个库 (database) 的数据 案例:朋友在群里问, MySQL全库备份。如何只恢复一个库? 1、采用–one-database 选项。不建议使用该方式,经常出现问题。 # mysql -uroot -pxx -D db1 -o 2、从全备份文件中将需要的库的建表语句和INSERT数据拿出来,然后再导入 # sed -n "/^-- Current Database: `db1`/,/^-- Current Database: `/p" all.dmp > db1.sql # mysql -uroot -pxx -D db1 二、利用全备恢复一张表 (table) 的数据 生产中遇到开发同事更新表时未加上where条件,造称 order_status 列所有数据都被更新为0. 通常,mysqldump对全库进行备份。恢复时如果恢复全库,太耗时间又没有必要。所以,我们只恢复想要的表即可。 mysqldump备份中,既有表结构,又有INSERT INTO语句包含数据。所以获得者两部分内容即可。 1、获得表结构 # sed -e"/./{H;$!d;}" -e "x;/CREATE TABLE `ecs_ugo_order_info`/!d;q" mysqldump_2017-05-23.sql 2、获得INSERT INTO 语句,用于数据的恢复 # grep -i "INSERT INTO `ecs_ugo_order_info`" mysqldump_2017-05-23.sql >data.sql & 3、根据得到的表结构创建表,并导入数据 mysql -uroot -pxxx xx 4、拼接update语句 mysql> select concat("update xx.ecs_ugo_order_info set order_status=",order_status," where order_id=",order_id,";") from ecs_ugo_order_info into outfile "/tmp/ecs_ugo_order_info_rercovery.sql"; 结果如下: 1.update xx.ecs_ugo_order_info set order_status=6 where order_id=3254778; 2.update xx.ecs_ugo_order_info set order_status=6 where order_id=3254824; 3.update xx.ecs_ugo_order_info set order_status=6 where order_id=3254870; 5、在生产库中将order_status恢复成正常值 # mysql -uroot -pxxx xx < /tmp/ecs_ugo_order_info_rercovery.sql

mysql里的类型datetime(3) 和datetime的区别,这里3的含义是什么?

后面还用加括号么?我用oracle没有括号啊

怎么向sqlserver插入datetime 格式数据

直接设置 getdate() 为默认值就可以了!每插入一条记录便会自动插入时间。

mysql datetime类型长度

MYSQL,datetime类型长度填8位。日期型(DATETIME)数据是表示日期数据,用字母D表示。日期的默认格式是{mm/dd/yyyy},其中mm表示月分,dd表示日期,yyyy表示年度,固定长度为8位。日期范围为介于 100 到 9999 年的日期或时间数值。扩展资料:MySQL主要分为三种类型:字符串,日期和数字(每种类型实际上都有一个二进制类型,但并不常用)。*字符串分为定长char和不定长度varchar,char以声明的长度为准,而varchar的长度与值的长度和字符集有关。*数字和日期均为固定长度的字段。不同的类型具有不同的长度。例如,Datetime是5.6.4之后的5个字节,之前的是8个字节;timestamp是4个字节,因为其存储整数,小数部分的长度通常与位数有关。

sqlserver的datetime查询

select b,count(*) From(select convert(varchar(4), datepart (year, b))+"-"+convert(varchar(2), datepart (month, b))+"-"+convert(varchar(2), datepart (day, b))+" "+convert(varchar(2), datepart (hour, b)) b From a)aagroup by b order by b

sql update 如何更新日期型数据

to_date是oracle中的写法,sql rq = ‘日期"

sql 里怎么把varchar转成datetime格式

使用convert函数,参数格式 CONVERT(VARCHAR(10),GETDATE(),110)第二个参数为字段名称,最后一个参数为指定转换格式例: SELECTCONVERT(VARCHAR(10),GETDATE(),110)检索结果为:11-10-2015

Mysql中的DATE和DATETIME有什么区别?

DATETIME类型可用于需要同时包含日期和时间信息的值。MySQL 以 "YYYY-MM-DD HH:MM:SS"格式检索与显示 DATETIME 类型。支持的范围是"1000-01-0100:00:00" 到 "9999-12-3123:59:59"。(“支持”的含义是,尽管更早的值可能工作,但不能保证他们均可以。)DATE类型可用于需要一个日期值而不需要时间部分时。MySQL 以 "YYYY-MM-DD" 格式检索与显示DATE值。支持的范围是 "1000-01-01" 到"9999-12-31"。

sql怎么查询datetime

SELECT COUNT(*)/datediff(hour,"2009-06-15 00:00:00","2009-06-28 00:00:00") from a where b >= "2009-06-15 00:00:00"and b <= "2009-06-28 00:00:00"如上是查询6月15日到28日期间,平均每小时记录的数据数目datediff(hour,"2009-06-15 00:00:00","2009-06-28 00:00:00" --取得日期区间的小时数 ------------------------------------------哦,是我读题不仔细唉,呵呵。这样的话就复杂了。你不急的话我明天有空写个预存程序来解决这个问题 ------------------------------------------1.先建立日期时间构造预存程序,用来传回作时间段查询的两个时间create PROC [dbo].[sp_fordate] @year char(4), @month char(2), @day char(2), @hour char(2), @date1 varchar(12) output, @date2 char(20) output, @date3 char(20) outputas begin set @date1 = @year + "-" + ltrim(rtrim(@month)) + "-" +rtrim(@day) set @date2 = @date1 + space(1) + ltrim(rtrim(@hour)) + ":00:00" set @hour = @hour +1 set @date3 = @date1 + space(1) + ltrim(rtrim(@hour)) + ":00:00" set @hour = @hour -1 set @date1 = @date1 + "-"+ @hour end2.在这一个预存程序里用循环跑出一个用union关联的超长sql语句执行。需要传入四个值,年份(2009四位格式),月份,日期(若日期传入为空自动取1),小时(输入1表示1点到2点时段,以此类推)create proc riqi @year char(4), @month char(2), @day char(2), @hour char(2)asBEGIN declare @SQL varChar(4000) if @day is null or @day = "" begin set @day = 1 end declare @date1 char(12) declare @date2 char(20) declare @date3 char(20) exec sp_fordate @year,@month,@day,@hour,@date1 output,@date2 output,@date3 output set @sql = "select count(*) as 数目, """+ @date1 + """ as 日期时间 from a where b >= """ + @date2 + """" + " and b<= """ + @date3 + """" set @day = @day + 1 while @day <= 31 BEGIN exec sp_fordate @year,@month,@day,@hour,@date1 output,@date2 output,@date3 output set @sql = @sql +char(10)+char(13)+ " union all " +char(10)+char(13)+ "select count(*), """+ @date1 + """ from a where b >= """ + @date2 + """" + " and b<= """ + @date3 + """" set @day = @day + 1 print @day if @@error <> "" BEGIN break END ELSE CONTINUE END exec(@sql)END测试结果如下数目 日期时间----------- ------------3 2009-10-1-1 2 2009-10-2-1 1 2009-10-3-1 最后的-1表示时间段是一点唉,只想到这个笨办法唉

SQL 中 date 与datetime的区别

date 是日期 datetime 是日期 时间sql server 2000 2005中没有date

SQL server 2005 的简单语句

没有一点基础的话说再多都是多余,建议先看些SQL 基本的常用增删改查。先学跑再学走!这样对你会好一些

sql数据库求答案

这么多题 你是来搞笑的吧。。。

SQL多表查询详解

本教程为大家介绍SQL中的多表查询,下面我们来看看具体实例吧。新建两张表:表1:student 截图如下:表2:course 截图如下:(此时这样建表只是为了演示连接SQL语句,当然实际开发中我们不会这样建表,实际开发中这两个表会有自己不同的主键。)一、外连接外连接可分为:左连接、右连接、完全外连接。1、左连接 left join 或 left outer joinSQL语句:select * from student left join course on student.ID=course.ID执行结果:左外连接包含left join左表所有行,如果左表中某行在右表没有匹配,则结果中对应行右表的部分全部为空(NULL).注:此时我们不能说结果的行数等于左表数据的行数。当然此处查询结果的行数等于左表数据的行数,因为左右两表此时为一对一关系。2、右连接 right join 或 right outer joinSQL语句:select * from student right join course on student.ID=course.ID执行结果:右外连接包含right join右表所有行,如果左表中某行在右表没有匹配,则结果中对应左表的部分全部为空(NULL)。注:同样此时我们不能说结果的行数等于右表的行数。当然此处查询结果的行数等于左表数据的行数,因为左右两表此时为一对一关系。3、完全外连接 full join 或 full outer joinSQL语句:select * from student full join course on student.ID=course.ID执行结果:完全外连接包含full join左右两表中所有的行,如果右表中某行在左表中没有匹配,则结果中对应行右表的部分全部为空(NULL),如果左表中某行在右表中没有匹配,则结果中对应行左表的部分全部为空(NULL)。二、内连接 join 或 inner joinSQL语句:select * from student inner join course on student.ID=course.ID执行结果:inner join 是比较运算符,只返回符合条件的行。此时相当于:select * from student,course where student.ID=course.ID三、交叉连接 cross join1.概念:没有 WHERE 子句的交叉联接将产生连接所涉及的表的笛卡尔积。第一个表的行数乘以第二个表的行数等于笛卡尔积结果集的大小。SQL语句:select * from student cross join course执行结果:如果我们在此时给这条SQL加上WHERE子句的时候比如SQL:select * from student cross join course where student.ID=course.ID此时将返回符合条件的结果集,结果和inner join所示执行结果一样。四、两表关系为一对多,多对一或多对多时的连接语句当然上面两表为一对一关系,那么如果表A和表B为一对多、多对一或多对多的时候,我们又该如何写连接SQL语句呢?其实两表一对多的SQL语句和一对一的SQL语句的写法都差不多,只是查询的结果不一样,当然两表也要略有改动。比如表1的列可以改为:Sno Name Cno表2的列可以改为:Cno CName这样两表就可以写一对多和多对一的SQL语句了,写法和上面的一对一SQL语句一样。下面介绍一下当两表为多对多的时候我们该如何建表以及些SQL语句。新建三表:表A: student 截图如下:表B: course 截图如下:表C: student_course 截图如下:一个学生可以选择多门课程,一门课程可以被多个学生选择,因此学生表student和课程表course之间是多对多的关系。当两表为多对多关系的时候,我们需要建立一个中间表student_course,中间表至少要有两表的主键,当然还可以有别的内容。SQL语句:select s.Name,C.Cname from student_course as sc left join student as s on s.Sno=sc.Sno left join course as c on c.Cno=sc.Cno执行结果:此条SQL执行的结果是学生选课的情况。

sql多表查询!~急~!在线等!~

select Teacher.TeacherId ,Teacher.TeacherPwd,Teacher.Teachername,Course.CourseName,Teacher.Teacherstate from Teacher LEFT outer JOIN CourseExamInfo on Teacher.TeacherId=CourseExamInfo.teacherId left outer join course on CourseExamInfo.courseid=course.courseid

请帮我写个SQL SERVER的语句,显示:姓名 语文 数学 英语 历史 格式不知道怎么写,请看补充:

你这是一个纵转横的问题,百度搜索一下 sql纵转横,好多例子

sql联合查询语句(两张表)

--创建测试数据drop table #acreate table #a(idd int,name2 varchar(10),image2 varchar(10),tag2 varchar(10))insert into #a values(1,"长城","。","长城")insert into #a values(1,"故宫","。","故宫")insert into #a values(1,"天安门","。","天安门")drop table #bcreate table #b(id int,name varchar(10),image varchar(10),tag varchar(10))insert into #b values(1,"爱情1","。","长城")insert into #b values(2,"天空","。","故宫")insert into #b values(3,"23爱","。","长城")insert into #b values(2,"蓝天","。","故宫")---------------实现代码部分---------------- select * from #a select * from #bselect tag ,max(t2.idd) as idd ,max(t2.name2) as name2 ,max(t2.image2) as image2 ,(select name+"、" from #b t1 where t1.tag =tt.tag for xml path("")) as name ,(select image+"、" from #b t1 where t1.tag =tt.tag for xml path("")) as imagefrom #b tt left join #a t2 on t2.tag2 =tt.tag group by tag --查询结果 /* tag idd name2 image2 name image长城 1 长城 。 爱情1、23爱、 。、。、故宫 1 故宫 。 天空、蓝天、 。、。、*/

Student 学生表 ,Course 课程表 ,SC成绩表 ,Teacher 教师表,sql操作运用

建表语句 CREATE TABLE student(s# INT,sname nvarchar(32),sage INT,ssex nvarchar(8)) CREATE TABLE course(c# INT,cname nvarchar(32),t# INT) CREATE TABLE sc(s# INT,c# INT,score INT) CREATE TABLE teacher(t# INT,tname nvarchar(16)) 插入测试数据语句 insert into Student select 1,N"刘一",18,N"男" union allselect 2,N"钱二",19,N"女" union allselect 3,N"张三",17,N"男" union allselect 4,N"李四",18,N"女" union allselect 5,N"王五",17,N"男" union allselect 6,N"赵六",19,N"女" insert into Teacher select 1,N"叶平" union allselect 2,N"贺高" union allselect 3,N"杨艳" union allselect 4,N"周磊"insert into Course select 1,N"语文",1 union allselect 2,N"数学",2 union allselect 3,N"英语",3 union allselect 4,N"物理",4insert into SC select 1,1,56 union all select 1,2,78 union all select 1,3,67 union all select 1,4,58 union all select 2,1,79 union all select 2,2,81 union all select 2,3,92 union all select 2,4,68 union all select 3,1,91 union all select 3,2,47 union all select 3,3,88 union all select 3,4,56 union all select 4,2,88 union all select 4,3,90 union all select 4,4,93 union all select 5,1,46 union all select 5,3,78 union all select 5,4,53 union all select 6,1,35 union all select 6,2,68 union all select 6,4,71问题问题: 1、查询“001”课程比“002”课程成绩高的所有学生的学号; select a.S# from (select s#,score from SC where C#="001") a,(select s#,score from SC where C#="002") b where a.score>b.score and a.s#=b.s#; 2、查询平均成绩大于60分的同学的学号和平均成绩; select S#,avg(score) from sc group by S# having avg(score) >60; 3、查询所有同学的学号、姓名、选课数、总成绩; select Student.S#,Student.Sname,count(SC.C#),sum(score) from Student left Outer join SC on Student.S#=SC.S# group by Student.S#,Sname 4、查询姓“李”的老师的个数; select count(distinct(Tname)) from Teacher where Tname like "李%"; 5、查询没学过“叶平”老师课的同学的学号、姓名; select Student.S#,Student.Sname from Student where S# not in (select distinct( SC.S#) from SC,Course,Teacher where SC.C#=Course.C# and Teacher.T#=Course.T# and Teacher.Tname="叶平"); 6、查询学过“001”并且也学过编号“002”课程的同学的学号、姓名; select Student.S#,Student.Sname from Student,SC where Student.S#=SC.S# and SC.C#="001"and exists( Select * from SC as SC_2 where SC_2.S#=SC.S# and SC_2.C#="002"); 7、查询学过“叶平”老师所教的所有课的同学的学号、姓名; select S#,Sname from Student where S# in (select S# from SC ,Course ,Teacher where SC.C#=Course.C# and Teacher.T#=Course.T# and Teacher.Tname="叶平" group by S# having count(SC.C#)=(select count(C#) from Course,Teacher where Teacher.T#=Course.T# and Tname="叶平")); 8、查询课程编号“002”的成绩比课程编号“001”课程低的所有同学的学号、姓名; Select S#,Sname from (select Student.S#,Student.Sname,score ,(select score from SC SC_2 where SC_2.S#=Student.S# and SC_2.C#="002") score2 from Student,SC where Student.S#=SC.S# and C#="001") S_2 where score2 <score; 9、查询所有课程成绩小于60分的同学的学号、姓名; select S#,Sname from Student where S# not in (select S.S# from Student AS S,SC where S.S#=SC.S# and score>60); 10、查询没有学全所有课的同学的学号、姓名; select Student.S#,Student.Sname from Student,SC where Student.S#=SC.S# group by Student.S#,Student.Sname having count(C#) <(select count(C#) from Course); 11、查询至少有一门课与学号为“1001”的同学所学相同的同学的学号和姓名; select distinct S#,Sname from Student,SC where Student.S#=SC.S# and SC.C# in (select C# from SC where S#="1001"); 12、查询至少学过学号为“001”同学所有一门课的其他同学学号和姓名; select distinct SC.S#,Sname from Student,SC where Student.S#=SC.S# and C# in (select C# from SC where S#="001"); 13、把“SC”表中“叶平”老师教的课的成绩都更改为此课程的平均成绩; update SC set score=(select avg(SC_2.score) from SC SC_2 where SC_2.C#=SC.C# ) from Course,Teacher where Course.C#=SC.C# and Course.T#=Teacher.T# and Teacher.Tname="叶平"); 14、查询和“1002”号的同学学习的课程完全相同的其他同学学号和姓名; select S# from SC where C# in (select C# from SC where S#="1002") group by S# having count(*)=(select count(*) from SC where S#="1002"); 15、删除学习“叶平”老师课的SC表记录; Delect SC from course ,Teacher where Course.C#=SC.C# and Course.T#= Teacher.T# and Tname="叶平"; 16、向SC表中插入一些记录,这些记录要求符合以下条件:没有上过编号“003”课程的同学学号、2、 号课的平均成绩; Insert SC select S#,"002",(Select avg(score) from SC where C#="002") from Student where S# not in (Select S# from SC where C#="002"); 17、按平均成绩从高到低显示所有学生的“数据库”、“企业管理”、“英语”三门的课程成绩,按如下形式显示: 学生ID,,数据库,企业管理,英语,有效课程数,有效平均分 SELECT S# as 学生ID ,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#="004") AS 数据库 ,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#="001") AS 企业管理 ,(SELECT score FROM SC WHERE SC.S#=t.S# AND C#="006") AS 英语 ,COUNT(*) AS 有效课程数, AVG(t.score) AS 平均成绩 FROM SC AS t GROUP BY S# ORDER BY avg(t.score) 18、查询各科成绩最高和最低的分:以如下形式显示:课程ID,最高分,最低分 SELECT L.C# As 课程ID,L.score AS 最高分,R.score AS 最低分 FROM SC L ,SC AS R WHERE L.C# = R.C# and L.score = (SELECT MAX(IL.score) FROM SC AS IL,Student AS IM WHERE L.C# = IL.C# and IM.S#=IL.S# GROUP BY IL.C#) AND R.Score = (SELECT MIN(IR.score) FROM SC AS IR WHERE R.C# = IR.C# GROUP BY IR.C# ); 自己写的:select c# ,max(score)as 最高分 ,min(score) as 最低分 from dbo.sc group by c# 19、按各科平均成绩从低到高和及格率的百分数从高到低顺序 SELECT t.C# AS 课程号,max(course.Cname)AS 课程名,isnull(AVG(score),0) AS 平均成绩 ,100 * SUM(CASE WHEN isnull(score,0)>=60 THEN 1 ELSE 0 END)/COUNT(*) AS 及格百分数 FROM SC T,Course where t.C#=course.C# GROUP BY t.C# ORDER BY 100 * SUM(CASE WHEN isnull(score,0)>=60 THEN 1 ELSE 0 END)/COUNT(*) DESC 20、查询如下课程平均成绩和及格率的百分数(用"1行"显示): 企业管理(001),马克思(002),OO&UML (003),数据库(004) SELECT SUM(CASE WHEN C# ="001" THEN score ELSE 0 END)/SUM(CASE C# WHEN "001" THEN 1 ELSE 0 END) AS 企业管理平均分 ,100 * SUM(CASE WHEN C# = "001" AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = "001" THEN 1 ELSE 0 END) AS 企业管理及格百分数 ,SUM(CASE WHEN C# = "002" THEN score ELSE 0 END)/SUM(CASE C# WHEN "002" THEN 1 ELSE 0 END) AS 马克思平均分 ,100 * SUM(CASE WHEN C# = "002" AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = "002" THEN 1 ELSE 0 END) AS 马克思及格百分数 ,SUM(CASE WHEN C# = "003" THEN score ELSE 0 END)/SUM(CASE C# WHEN "003" THEN 1 ELSE 0 END) AS UML平均分 ,100 * SUM(CASE WHEN C# = "003" AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = "003" THEN 1 ELSE 0 END) AS UML及格百分数 ,SUM(CASE WHEN C# = "004" THEN score ELSE 0 END)/SUM(CASE C# WHEN "004" THEN 1 ELSE 0 END) AS 数据库平均分 ,100 * SUM(CASE WHEN C# = "004" AND score >= 60 THEN 1 ELSE 0 END)/SUM(CASE WHEN C# = "004" THEN 1 ELSE 0 END) AS 数据库及格百分数 FROM SC21、查询不同老师所教不同课程平均分从高到低显示SELECT max(Z.T#) AS 教师ID,MAX(Z.Tname) AS 教师姓名,C.C# AS 课程ID,MAX(C.Cname) AS 课程名称,AVG(Score) AS 平均成绩FROM SC AS T,Course AS C ,Teacher AS Zwhere T.C#=C.C# and C.T#=Z.T#GROUP BY C.C#ORDER BY AVG(Score) DESC 22、查询如下课程成绩第 3 名到第 6 名的学生成绩单:企业管理(001),马克思(002),UML (003),数据库(004)[学生ID],[学生姓名],企业管理,马克思,UML,数据库,平均成绩SELECT DISTINCT top 3SC.S# As 学生学号,Student.Sname AS 学生姓名 ,T1.score AS 企业管理,T2.score AS 马克思,T3.score AS UML,T4.score AS 数据库,ISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0) as 总分FROM Student,SC LEFT JOIN SC AS T1ON SC.S# = T1.S# AND T1.C# = "001"LEFT JOIN SC AS T2ON SC.S# = T2.S# AND T2.C# = "002"LEFT JOIN SC AS T3ON SC.S# = T3.S# AND T3.C# = "003"LEFT JOIN SC AS T4ON SC.S# = T4.S# AND T4.C# = "004"WHERE student.S#=SC.S# andISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0)NOT IN(SELECTDISTINCTTOP 15 WITH TIESISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0)FROM scLEFT JOIN sc AS T1ON sc.S# = T1.S# AND T1.C# = "k1"LEFT JOIN sc AS T2ON sc.S# = T2.S# AND T2.C# = "k2"LEFT JOIN sc AS T3ON sc.S# = T3.S# AND T3.C# = "k3"LEFT JOIN sc AS T4ON sc.S# = T4.S# AND T4.C# = "k4"ORDER BY ISNULL(T1.score,0) + ISNULL(T2.score,0) + ISNULL(T3.score,0) + ISNULL(T4.score,0) DESC); 23、统计列印各科成绩,各分数段人数:课程ID,课程名称,[100-85],[85-70],[70-60],[ <60]SELECT SC.C# as 课程ID, Cname as 课程名称,SUM(CASE WHEN score BETWEEN 85 AND 100 THEN 1 ELSE 0 END) AS [100 - 85],SUM(CASE WHEN score BETWEEN 70 AND 85 THEN 1 ELSE 0 END) AS [85 - 70],SUM(CASE WHEN score BETWEEN 60 AND 70 THEN 1 ELSE 0 END) AS [70 - 60],SUM(CASE WHEN score < 60 THEN 1 ELSE 0 END) AS [60 -]FROM SC,Coursewhere SC.C#=Course.C#GROUP BY SC.C#,Cname; 24、查询学生平均成绩及其名次SELECT 1+(SELECT COUNT( distinct 平均成绩)FROM (SELECT S#,AVG(score) AS 平均成绩FROM SCGROUP BY S#) AS T1WHERE 平均成绩 > T2.平均成绩) as 名次,S# as 学生学号,平均成绩FROM (SELECT S#,AVG(score) 平均成绩FROM SCGROUP BY S#) AS T2ORDER BY 平均成绩 desc;原文地址:http://www.cnblogs.com/qixuejia/p/3637735.html

sql 有一个“教师-课程”数据库,数据库中包括三个表 具体问题在这里htt

1/create table Course(Cno char(10) primary key not null, Cname char(20), Cpno char(10), Ccredit decimal(18,6))2/select * from Course where isnull(Cpno,"")="" order by Ccredit desc3/select top 3 Tno, Cno, Value from TC order by Value desc4/select Tno, Tname, Tsex, Tbirthday, Tdept from Teacher where Tname like "%龙%"5/select Cno,count(*) Value from TC group by Cno having count(*)>=36/select Tno, Tname,Cno,Ccredit from TC left outer join Course on tc.cno=Course.cnoleft outer join Teacher on tc.tno=Teacher.tnowhere Course.Ccredit>4 order by Course.Ccredit desc7/select Tno, Tname,Cno,value from TC left outer join Course on tc.cno=Course.cnoleft outer join Teacher on tc.tno=Teacher.tno where Teacher.Tdept="物理" and TC.value>=85

sql的复合语句,各位大哥帮帮忙

student(sno,sname,sex,age)coures(cno,cname,credit,teachno)stu_cors(id,stuno,corsno,score)teacher(tno,tname)--一检索学习jsp这门课程的学生,列出学生的名字select student.snamefrom student where sno in(select stuno from stu_cors where corsno =(select cno from course where cname="jsp"))goselect student.snofrom student inner join stu_cors on student.sno=stu_cors.stuno inner join course on corsno=course.cnowhere course.cname="jsp"select snamefrom studentwhere sno in(select stu_cors.stuno from stu_cors inner join course on stu_cors.corsno=course.cno where course.cname="jsp")--二检索java课程有多少学生学习.select COUNT(stuno) as "JAVA学习人数"from stu_cors where corsno =(select cno from course where cname="java")--三检索各科课程各有多少学生学习,select course.cname,COUNT(stu_cors.stuno) as "学习人数"from stu_cors inner join course on stu_cors.corsno=course.cnogroup by course.cname --四检索学习了jsp和servlet两门课程的学生有多少select COUNT(sno) as "jsp和servlet课程的学生人数"from student where sno in(select stu_cors.stuno from stu_cors inner join course on stu_cors.corsno=course.cno where course.cname="jsp") and sno in(select stu_cors.stuno from stu_cors inner join course on stu_cors.corsno=course.cno where course.cname="jsp")--五检索学习了超过两门课程的学生有多少select corsno,COUNT(stuno) as "学习超过两门课程的学生人数"from stu_corsgroup by corsno having COUNT(stuno)>2 order by corsno --六检索重来没有学生学习过的课程,课程的名字select cname from course where cno not in(select corsno from stu_cors )--七检索老师A有多少学生select COUNT(stuno) as "张老师的学生人数"from stu_corswhere corsno in(select course.cno from course inner join teacher on course.teachno=teacher.tno where teacher.tname="张华" )--九检索一共有多少老师,每一个老师所授课程是什么select teacher.tno,course.cname from course join teacher on course.teachno=teacher.tnogroup by teacher.tno,course.cname--十检索每个老师有多少个学生select teacher.tno,teacher.tname ,COUNT(stu_cors.stuno) as "学生人数"from teacher inner join course on teacher.tno=course.cno inner join stu_cors on course.cno=stu_cors.corsnogroup by teacher.tno,teacher.tname order by teacher.tno--十一检索授课超过两门的老师select teacher.tno,COUNT(course.cno) as "授课超过两门的老师"from teacher inner join course on teacher.tno=course.teachnogroup by teacher.tno having(COUNT(course.cno)>2) order by teacher.tno--十三检索A老师所授课程被学生全部学习的学生的名字.select snamefrom studentwhere sno (select stuno from stu_cors inner join )--查询选修人数超过人的课程的名字,以及每门课的选课总人数,并将结果按照人数的升序排序select teacher.tno,COUNT(stu_cors.stuno) as "选课总人数"from teacher inner join course on teacher.tno=course.teachno inner join stu_cors on course.cno=stu_cors.corsno group by teacher.tno having(COUNT(stu_cors.stuno)>350) order by count(stu_cors.stuno) asc--查询每门课的成绩都比这门课的其他同学高的学生的学号select stunofrom stu_cors where group by corsno --查询每个同学的学号和姓名以及这个同学成绩为优秀的课程的门数。select student.sno,student.sname,max(stu_cors.score)from student inner join stu_cors on student.sno=stu_cors.stunogroup by student.sno,student.sname--查询其他系的同学的年龄比‘软件工程系"的某个学生的年龄小的学生的学号,姓名和系别--查询每个系中年龄高于这个系的平均年龄的学生的学号和姓名、年龄select sno,sname,agefrom studentgroup by deptno,sno,sname,age having(age>AVG(age))--查询没有选课的学生的学号和姓名select sno,sname from student where sno not in(select sno from stu_cors)go--查询每个同学成绩高于自己选修课程的平均分的学生的学号和选修课程的课号select stuno,corsnofrom stu_cors group by stuno,corsno,score having(score>AVG(score))--查询每个学生以及选修课程的情况(要求使用做外连接)select student.sno,student.sname,course.cnamefrom student inner join stu_cors on student.sno=stu_cors.stuno left outer join course on stu_cors.corsno=course.cnoorder by student.snogo

SQL选择题?, 有兴趣着过来看看....!

1 b2 a3 ad4 d5 d

一道sql语句中有关左连接的题目

select 课程名,开课单位 from coursewhere 课程号 not in(select 课程号 from score1)

SQL多表连接查询实例分析(详细图文)

新建两张表:表1:student 截图如下:表2:course 截图如下:(此时这样建表只是为了演示连接SQL语句,当然实际开发中我们不会这样建表,实际开发中这两个表会有自己不同的主键。)一、外连接外连接可分为:左连接、右连接、完全外连接。1、左连接 leftjoin或leftouterjoinSQL语句:select*fromstudentleftjoincourseonstudent.ID=course.ID执行结果:左外连接包含leftjoin左表所有行,如果左表中某行在右表没有匹配,则结果中对应行右表的部分全部为空(NULL).注:此时我们不能说结果的行数等于左表数据的行数。当然此处查询结果的行数等于左表数据的行数,因为左右两表此时为一对一关系。2、右连接 rightjoin或rightouterjoinSQL语句:select*fromstudentrightjoincourseonstudent.ID=course.ID执行结果:右外连接包含rightjoin右表所有行,如果左表中某行在右表没有匹配,则结果中对应左表的部分全部为空(NULL)。注:同样此时我们不能说结果的行数等于右表的行数。当然此处查询结果的行数等于左表数据的行数,因为左右两表此时为一对一关系。3、完全外连接 fulljoin或fullouterjoinSQL语句:select*fromstudentfulljoincourseonstudent.ID=course.ID执行结果:完全外连接包含fulljoin左右两表中所有的行,如果右表中某行在左表中没有匹配,则结果中对应行右表的部分全部为空(NULL),如果左表中某行在右表中没有匹配,则结果中对应行左表的部分全部为空(NULL)。二、内连接 join 或innerjoinSQL语句:select*fromstudentinnerjoincourseonstudent.ID=course.ID执行结果:innerjoin是比较运算符,只返回符合条件的行。此时相当于:select*fromstudent,coursewherestudent.ID=course.ID三、交叉连接crossjoin1.概念:没有WHERE子句的交叉联接将产生连接所涉及的表的笛卡尔积。第一个表的行数乘以第二个表的行数等于笛卡尔积结果集的大小。SQL语句:select*fromstudentcrossjoincourse执行结果:如果我们在此时给这条SQL加上WHERE子句的时候比如SQL:select*fromstudentcrossjoincoursewherestudent.ID=course.ID此时将返回符合条件的结果集,结果和innerjoin所示执行结果一样。四、两表关系为一对多,多对一或多对多时的连接语句当然上面两表为一对一关系,那么如果表A和表B为一对多、多对一或多对多的时候,我们又该如何写连接SQL语句呢?其实两表一对多的SQL语句和一对一的SQL语句的写法都差不多,只是查询的结果不一样,当然两表也要略有改动。比如表1的列可以改为:SnoNameCno表2的列可以改为:CnoCName这样两表就可以写一对多和多对一的SQL语句了,写法和上面的一对一SQL语句一样。下面介绍一下当两表为多对多的时候我们该如何建表以及些SQL语句。新建三表:表A: student截图如下:表B: course截图如下:表C: student_course截图如下:一个学生可以选择多门课程,一门课程可以被多个学生选择,因此学生表student和课程表course之间是多对多的关系。当两表为多对多关系的时候,我们需要建立一个中间表student_course,中间表至少要有两表的主键,当然还可以有别的内容。SQL语句:selects.Name,C.Cnamefromstudent_courseasscleftjoinstudentassons.Sno=sc.Snoleftjoincourseasconc.Cno=sc.Cno执行结果:此条SQL执行的结果是学生选课的情况。

如何用db2输入SQL命令

无论是windows系统,还是linux或AIX你可以在实例用户下,先键入 db2 这个命令,进入到db2命令行,然再执行creat database mydb或者你可以在系统命令行下直接执行db2 create database mydb或db2 "create database mydb"

mysql和db2有什么区别

mysql是本来是sun的,个人用途是免费,而且开源。后来oracle收购mysql后,貌似搞了很大动作。总之mysql是最廉价的关系数据库,一般用在PC 服务器,linux集群。db2是ibm的,功能齐全,可以部署在各个级别服务器或集群上,从pc到刀片服务器,到机架服务器再到小型机和大型机。最后说一句,mysql主要是互联网企业在用,成本低嘛,db2是电信、金融行业在用,成本不是问题,主要是厂家服务+稳定

DB2与SQL Server的区别?

1.开放性SQL Server只能在Windows 上运行,没有丝毫的开放性,操作系统的系统的稳定对数据库是十分重要的。Windows9X系列产品是偏重于桌面应用,NT server只适合中小型企业。而且Windows平台的可靠性,安全性和伸缩性是非常有限的。它不象Unix那样久经考验,尤其是在处理大数据量的关键业务时。DB2能在所有主流平台上运行(包括Windows)。最适于海量数据。DB2在企业级的应用最为广泛,在全球的500家最大的企业中,几乎85%以上用DB2数据库服务器,而国内到97年约占5%。2.可伸缩性,并行性SQL Server并行实施和共存模型并不成熟。很难处理日益增多的用户数和数据卷。伸缩性有限。DB2 DB2具有很好的并行性。DB2把数据库管理扩充到了并行的、多节点的环境。数据库分区是数据库的一部分,包含自己的数据、索引、配置文件、和事务日志。数据库分区有时被称为节点或数据库节点。 3.安全性SQL server 没有获得任何安全证书。 DB2 获得最高认证级别的ISO标准认证。4.性能SQL Server 多用户时性能不佳 DB2 适用于数据仓库和在线事物处理,性能较高。 5.客户端支持及应用模式SQL Server C/S结构,只支持Windows客户,可以用ADO,DAO,OLEDB,ODBC连接。DB2跨平台,多层结构,支持ODBC,JDBC等客户。6.操作简便 SQL Server 操作简单,但只有图形界面。DB2操作简单,同时提供GUI和命令行,在Windows NT和Unix下操作相同。

DB2报错SQLSTATE=42601,怎么解决

解决方法如下:alter table student alter ID restart with xxxx 。xxxx可以自定义,为当前表中id的最大值加1即可。

db2用sql语句查看建表语句,像mysql和oracle那样返回,求高手

db2 describe table tablename

sqlserver和DB2的区别

SQL Server和DB2都是关系数据库管理系统,是介于操作系统和用户之间的应用软件。--------------------------SQL Server 是一个关系数据库管理系统。最初是由 Sybase、 Microsoft和Ashton-Tate三家公司共同开发的,于1988 年推出了第一个OS/2 版本。在Windows NT 推出后,Microsoft与Sybase 在SQL Server 的开发上就分道扬镳了,Microsoft 将SQL Server 移植到Windows NT系统上,专注于开发推广SQL Server 的Windows NT 版本。Sybase 则较专注于SQL Server在UNIX 操作系统上的应用。我们现在常说的SQL Server一般是指Windows视窗平台上运行的MS SQL Server。它有四个版本:标准版,企业版,个人版,开发版。目前的主流是MS SQL Server 2008。微软预计在2012年初,将发布SQL Server 2012。该版本从高到低分别为企业版、商业智能版和标准版。其中企业版是全功能版本,而其它两个版本则分别面向工作组和中小企业,所支持的机器规模和扩展数据库功能都不一样,价格方面是根据处理器核心数量而定。MS SQL Server只有图形界面操作方式。--------------------------DB2 是1983年IBM公司开发的数据库管理系统,全称为DATABASE 2 for MVS(内部代号为"Eagle")。主要应用于大型应用系统,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下,具有较好的可伸缩性。在安全方面,获得最高级别的ISO标准认证。DB2同时提供GUI和命令行两种操作方式,在Windows NT和Unix下操作相同。DB2在全局优化方面的性能超过了其它数据库。--------------------------对于数据库而言,性能是对处理数据库请求的效率的衡量。引用IBM Almaden 研究中心的Burce Lindsay的话来说,“对于一个有效的数据库系统来说,有三个因素非常关键。它们是性能,性能,和性能。”DB2性能的核心组成部分是SQL编译器.其基于成本的优化器利用Static Profiling功能,使它在事务型和数据仓库环境中都领先。

DB2 如何用sql语句查看表结构

1、 select * from sysibm.syscolumns where tbname = < table name>或者2、describe select * from <table name>

db2中插入数据后直接返回主键(自增列id)的sql怎么写

INSERT INTO jobs (job_desc,min_lvl,max_lvl)VALUES ("Accountant",12,125)--返回自增列SELECT @@IDENTITY AS "Identity"

DB2 的简介?与SQL Server 的区别与联系

DB2是IBM公司研制的一种关系型数据库系统。DB2主要应用于大型应用系统,具有较好的可伸缩性,可支持从大型机到单用户环境,应用于OS/2、Windows等平台下。 DB2提供了高层次的数据利用性、完整性、安全性、可恢复性,以及小规模到大规模应用程序的执行能力,具有与平台无关的基本功能和SQL命令。DB2采用了数据分级技术,能够使大型机数据很方便地下载到LAN数据库服务器,使得客户机/服务器用户和基于LAN的应用程序可以访问大型机数据,并使数据库本地化及远程连接透明化。 它以拥有一个非常完备的查询优化器而著称,其外部连接改善了查询性能,并支持多任务并行查询。 DB2具有很好的网络支持能力,每个子系统可以连接十几万个分布式用户,可同时激活上千个活动线程,对大型分布式应用系统尤为适用。SQL本是IBM DB2数据库的查询规格, 现已成所有关联式数据库必有的工具. DB2是针对企业环境, 而MS SQL则是走低价路线, 适合中小企环境.

怎样在MySQL数据库中导出整个数据库

1,将要导入的.sql文件移至bin文件下,这样的路径比较方便2,同上面导出的第1步3,进入MySQL:mysql -u 用户名 -p如我输入的命令行:mysql -u root -p (输入同样后会让你输入MySQL的密码)4,在MySQL-Front中新建你要建的数据库,这时是空数据库,如新建一个名为news的目标数据库5,输入:mysql>use 目标数据库名如我输入的命令行:mysql>use news;6,导入文件:mysql>source 导入的文件名; 如我输入的命令行:mysql>source news.sql; MySQL备份和还原,都是利用mysqldump、mysql和source命令来完成的。 1.Win32下MySQL的备份与还原 1.1 备份 开始菜单 | 运行 | cmd |利用“cd Program FilesMySQLMySQL Server 5.0in”命令进入bin文件夹 | 利用“mysqldump -u 用户名 -p databasename >exportfilename”导出数据库到文件,如mysqldump -u root -p voice>voice.sql,然后输入密码即可开始导出。

如何将mysql表结构导出成Excel格式的

由于工作需要,经常需要将mysql数据库中的数据导出到excel表格,或者需要将excel表格数据导入到mysql数据库,我的方法是先将它们都转换成一种中间数据格式csv(execl数据可以直接导出为csv格式,csv格式也可以直接用excel打开)。下面介绍一下操作步骤:csv导入mysqlloaddatainfile"C:\Users\UserName\Desktop\test.csv"intotable`table`fieldsterminatedby","optionallyenclosedby"""escapedby"""linesterminatedby" ";mysql导入csvselect*from`table`loaddatainfile"C:\Users\UserName\Desktop\test.csv"fieldsterminatedby","optionallyenclosedby"""escapedby"""linesterminatedby" ";如果乱码,可用相关编辑器打开.csv文件,另存为utf-8的csv

怎么将mysql的表结构导出到sqlserver中

在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看: mysqldump 最常用的: mysqldump -uroot -pmysql databasefoo table1 table2 > foo.sql 这样就可以将数据库databasefoo的表table1,table2以sql形式导入foo.sql中,其中-uroot参数表示访问数据库的用户名是root,如果有密码还需要加上-p参数 C:Usersjack> mysqldump -uroot -pmysql sva_rec date_drv > e:date_drv.sql mysql的数据导入也是相当便捷的,如: mysql -uroot databasefoo < foo.sql 这样就可以将foo.sql的数据全部导入数据库databasefoo 1.导出整个数据库   mysqldump -u用户名 -p密码 数据库名 > 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql sva_rec > e:sva_rec.sql   2.导出一个表,包括表结构和数据   mysqldump -u用户名 -p 密码 数据库名 表名> 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:date_rec_drv.sql   3.导出一个数据库结构   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec > e:sva_rec.sql 4.导出一个表,只有表结构   mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:date_rec_drv.sql   5.导入数据库   常用source 命令   进入mysql数据库控制台,   如mysql -u root -p   mysql>use 数据库   然后使用source命令,后面参数为脚本文件(如这里用到的.sql)   mysql>source d:wcnc_db.sql.sql 文件再放到SQL查询分析器里执行下,(有可能结构要调下)

mysql怎么导入sql文件到表中

source绝对路径/*.sql需要注意的是:路径用正斜杠只要一个,即:/但是用反斜杠的时候要用两个:\(因为一个代表转义)。附:source也可以用.来代替使用!直接放盘根目录下就是source盘符:*.sql例如:mysql>sourced:wcnc_db.sql

如何用mysqldump单独导出一张表

在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看: mysqldump 最常用的: mysqldump -uroot -pmysql databasefoo table1 table2 > foo.sql 这样就可以将数据库databasefoo的表table1,table2以sql形式导入foo.sql中,其中-uroot参数表示访问数据库的用户名是root,如果有密码还需要加上-p参数 C:Usersjack> mysqldump -uroot -pmysql sva_rec date_drv > e:date_drv.sql mysql的数据导入也是相当便捷的,如: mysql -uroot databasefoo < foo.sql 这样就可以将foo.sql的数据全部导入数据库databasefoo 1.导出整个数据库 mysqldump -u用户名 -p密码 数据库名 > 导出的文件名C:Usersjack> mysqldump -uroot -pmysql sva_rec > e:sva_rec.sql 2.导出一个表,包括表结构和数据 mysqldump -u用户名 -p 密码 数据库名 表名> 导出的文件名C:Usersjack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:date_rec_drv.sql 3.导出一个数据库结构C:Usersjack> mysqldump -uroot -pmysql -d sva_rec > e:sva_rec.sql 4.导出一个表,只有表结构mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文件名C:Usersjack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:date_rec_drv.sql 5.导入数据库 常用source 命令进入mysql数据库控制台,如mysql -u root -pmysql>use 数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysql>source d:wcnc_db.sql

mysql数据库怎么导出单个表结构

在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看: mysqldump 最常用的: mysqldump -uroot -pmysql databasefoo table1 table2 > foo.sql 这样就可以将数据库databasefoo的表table1,table2以sql形式导入foo.sql中,其中-uroot参数表示访问数据库的用户名是root,如果有密码还需要加上-p参数 C:Usersjack> mysqldump -uroot -pmysql sva_rec date_drv > e:date_drv.sql mysql的数据导入也是相当便捷的,如: mysql -uroot databasefoo < foo.sql 这样就可以将foo.sql的数据全部导入数据库databasefoo 1.导出整个数据库 mysqldump -u用户名 -p密码 数据库名 > 导出的文件名C:Usersjack> mysqldump -uroot -pmysql sva_rec > e:sva_rec.sql 2.导出一个表,包括表结构和数据 mysqldump -u用户名 -p 密码 数据库名 表名> 导出的文件名C:Usersjack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:date_rec_drv.sql 3.导出一个数据库结构C:Usersjack> mysqldump -uroot -pmysql -d sva_rec > e:sva_rec.sql 4.导出一个表,只有表结构mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文件名C:Usersjack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:date_rec_drv.sql 5.导入数据库 常用source 命令进入mysql数据库控制台,如mysql -u root -pmysql>use 数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysql>source d:wcnc_db.sql

mysqldump怎么批量导入所有数据库

1.导出整个数据库   mysqldump -u 用户名 -p 数据库名 > 导出的文件名   mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql   2.导出一个表   mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名   mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql   3.导出一个数据库结构   mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql   -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table  

mysql怎么导出数据库表结构

1.导出整个数据库   mysqldump -u用户名 -p密码 数据库名 > 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql sva_rec > e:sva_rec.sql   2.导出一个表,包括表结构和数据   mysqldump -u用户名 -p 密码 数据库名 表名> 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:date_rec_drv.sql   3.导出一个数据库结构   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec > e:sva_rec.sql 4.导出一个表,只有表结构  mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:date_rec_drv.sql   5.导入数据库   常用source 命令   进入mysql数据库控制台,   如mysql -u root -p   mysql>use 数据库   然后使用source命令,后面参数为脚本文件(如这里用到的.sql)   mysql>source d:wcnc_db.sql

mysql怎么用命令行导入数据库

导入数据库常用source 命令进入mysql数据库控制台,如mysql -u root -pmysql>use 数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysql>source d:/wcnc_db.sql

MySQL导出导入SQL文件命令方法

  1.导出整个数据库   mysqldump -u 用户名 -p 数据库名 > 导出的`文件名   mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql   2.导出一个表   mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名   mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql   3.导出一个数据库结构   mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql   -d 没有数据 --add-drop-table 在每个create语句之前增加一个   4.导入数据库   常用source 命令   进入mysql数据库控制台,   如mysql -u root -p   mysql>use 数据库   然后使用source命令,后面参数为脚本文件(如这里用到的.sql)   mysql>source d:wcnc_db.sql

如何在db2命令行运行sql必知必会例子

db2 => connect to dbName user xxx using passworddb2 => sql语句如果要执行一个sql脚本文件:db2 => quitc:> db2 -tvf sql文件名db2 -td@ -f filename@是语句结束符。E:>db2 ? optionsdb2 [option ...] [db2-command | sql-statement |[? [phrase | message | sqlstate | class-code]]]option:-a、-c、-e{c|s}、-finfile、-lhistfile、-n、-o、-p、-rreport、-s、-t、 -td;、-v、-w、-x 和 -zoutputfile。选项 描述 缺省设置------ ---------------------------------------- ----------------a 显示 SQLCA OFF-c 自动落实 ON-e 显示 SQLCODE/SQLSTATE OFF-f 读取输入文件 OFF-l 将命令记录到历史文件中 OFF-n 除去换行字符 OFF-o 显示输出 ON-p 显示 db2 交互式提示符 ON-r 将输出报告保存到文件 OFF-s 在命令出错时停止执行 OFF-t 设置语句终止字符 OFF-v 回送当前命令 OFF-w 显示 FETCH/SELECT 警告消息 ON-x 不打印列标题 OFF-z 将所有输出保存到输出文件 OFF注意:使用 DB2OPTIONS 环境变量定制选项缺省值。紧跟选项字母后的减号(-)使该选项关闭。使用 UPDATE COMMAND OPTIONS 更改选项设置(以交互式或文件输入方式)。只能提供nt环境下编写脚本的例子给你以供参考: 脚本样例: db2 connect to yourdb user yourname using yourpassword db2 insert into newuser(username,password,email) values("Amy","1234","Amy@ss.com") db2 insert into newuser(username,password,email) values("Judy","1234","Judy@ss.com") db2 commit db2 disconnect yourdb 运行脚本: 运行db2cmd X:XXX.bat 以下摘自本论坛的FAQ可参考: " 在命令窗口中运行DB2脚本,可用 db2 -svtf 脚本文件名 来实现。 例如,脚本文件名为sample.sql,运行:db2 -svtf sample.sql 参数中: s 代表遇到错误时中止运行脚本 v 代表输出结果到屏幕 t 指以;号作为每行的分隔符 f 指后面需跟脚本文件名 "---此摘录版权归斑竹非本人所有 具体在AS400如何编写脚本非常遗憾.db2 -x select SERIALNO from tabname where clauseC:>db2 attach to db2164 user ccp输入 ccp 的当前密码: 实例连接信息实例服务器 = DB2/NT 8.2.0授权标识 = CCP本地实例别名 = DB2164C:>db2 connect to dw164 user ccp输入 ccp 的当前密码: 数据库连接信息数据库服务器 = DB2/NT 8.2.0SQL 授权标识 = CCP本地数据库别名 = DW164C:>db2 select * from CCP_STS1 fetch first 2 rows only with urCUST_ID NOW_PRED_S LOAD_TIME-------------------- -------------------- -------------------------- 3094736. ZFS 2008-05-07-10.02.00.453000 3145886. ZFS 2008-05-07-10.02.00.453000 2 条记录已选择。C:>db2 list command options 命令行处理器选项设置后端进程等待时间(秒) (DB2BQTIME) = 1连接至后端的重试次数 (DB2BQTRY) = 60请求队列等待时间(秒) (DB2RQTIME) = 5输入队列等待时间(秒) (DB2IQTIME) = 5命令选项 (DB2OPTIONS) = +m 选项 描述 当前设置------ ---------------------------------------- --------------- -a 显示 SQLCA OFF -c 自动落实 ON -d 检索并显示 XML 声明 OFF -e 显示 SQLCODE/SQLSTATE OFF -f 读取输入文件 OFF -i 显示 XML 数据并带有缩进 OFF -l 将命令记录到历史记录文件中 OFF -m 显示受影响的行数 OFF -n 除去换行字符 OFF -o 显示输出 ON -p 显示交互式输入提示符 ON -q 保留空格和换行符 OFF -r 将输出保存到报告文件 OFF -s 在命令出错时停止执行 OFF -t 设置语句终止字符 OFF -v 回传当前命令 OFF -w 显示 FETCH/SELECT 警告消息 ON -x 不打印列标题 OFF -z 将所有输出保存到输出文件 OFFC:>db2set DB2OPTIONS=-xC:>db2 select * from CCP_STS1 fetch first 2 rows only with ur 4654908. ZFS 2008-05-07-10.02.00.453000 3716687. ZFS 2008-05-07-10.02.00.453000

织梦网站内容系统的MYSQL数据库怎么导出?

dedecms后台不是有备份还原的功能吗..1、先在原来的后台备份.2、在新空间重新装3、把原来的data目录上传覆盖新站点4、在新站点还原站点

db2怎么使用SQL判断一个字段是纯数字还是纯字母

使用正则表达式

sql语句报错,DB2 SQL Error: SQLCODE=-203, SQLST

order by id语句中id不不明确,是order by a.id。语句介绍:1、创建数据库:CREATE DATABASE database-name2、删除数据库:drop database dbname3、创建新表:create table tabname(col1 type1 [not null] [primary key],col2 type2 [not null],..)4、删除新表:drop table tabname5、增加一个列:Alter table tabname add column col type6、添加主键:Alter table tabname add primary key(col)7、删除主键:Alter table tabname drop primary key(col)8、创建索引:create [unique] index idxname on tabname(col….)9、删除索引:drop index idxname10、创建视图:create view viewname as select statement11、删除视图:drop view viewname

MySQL数据库怎么导出数据?

用navicat或phpmyadmin导出

mysql 怎样导出一个表的结构和数据

有一个博 为小 帮软件机器人,人人可以DIY 的软件机器人。电脑基础一般的也可以配置好,按照引导动画一步步来就是了,可以把复制粘贴的工作自动化,也就是你之前一个月好几百的 单子复制到EXCEL 表格的工作可以让小帮替你自动化完成。现在限量免费试用,快去百度下看看

mysql数据库导入错误

有的时候通过直接执行sql文件会报错,,把sql语句复制出来然后手动执行以下 就可以

在本地电脑MySQL中怎么创建数据库?高手帮忙

一) 连接MYSQL: 格式: mysql -h主机地址 -u用户名 -p用户密码 1、例1:连接到本机上的MYSQL 首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如: D:mysqlin,再键入命令mysql -uroot -p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql> 2、例2:连接到远程主机上的MYSQL 假设远程主机的IP为:10.0.0.1,用户名为root,密码为123。则键入以下命令: mysql -h10.0.0.1 -uroot -p123 (注:u与root可以不用加空格,其它也一样) 3、退出MYSQL命令 exit (回车) (二) 修改密码: 格式:mysqladmin -u用户名 -p旧密码 password 新密码 1、例1:给root加个密码123。首先在DOS下进入目录C:mysqlin,然后键入以下命令: mysqladmin -uroot -password 123 注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。 2、例2:再将root的密码改为456 mysqladmin -uroot -pab12 password 456 (三) 增加新用户:(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符) 格式:grant select on 数据库.* to 用户名@登录主机 identified by "密码" 例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令: grant select,insert,update,delete on *.* to test1@"%" Identified by "abc"; 但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。 例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。 grant select,insert,update,delete on mydb.* to test2@localhost identified by "abc"; 如果你不想test2有密码,可以再打一个命令将密码消掉。 grant select,insert,update,delete on mydb.* to test2@localhost identified by ""; (四) 显示命令 1、显示数据库列表: show databases; 刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。 2、显示库中的数据表: use mysql; //打开库 show tables; 3、显示数据表的结构: describe 表名; 4、建库: create database 库名; 5、建表: use 库名; create table 表名 (字段设定列表); 6、删库和删表: drop database 库名; drop table 表名; 7、将表中记录清空: delete from 表名; 8、显示表中的记录: select * from 表名; MySQL导入导出命令 1.导出整个数据库   mysqldump -u 用户名 -p 数据库名 > 导出的文件名   mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql 2.导出一个表   mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名   mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql 3.导出一个数据库结构   mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql   -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop table 4.导入数据库   常用source 命令   进入mysql数据库控制台,   如mysql -u root -p   mysql>use 数据库   然后使用source命令,后面参数为脚本文件(如这里用到的.sql)   mysql>source d:wcnc_db.sql (注:如果写成source d:wcnc_db.sql,就会报语法错误

怎样保存mysql数据库?

mysql导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sqlmysql导出数据库一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sqlmysql导出一个数据库结构 mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >d:wcnc_db.sql -d 没有数据 --add-drop-table 在每个create语句之前增加一个drop tablemysql导入数据库 常用source 命令 进入mysql数据库控制台, 如mysql -u root -p mysql>use 数据库 然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql>source d:wcnc_db.sql

db2中sql语句的where从句 不等于怎么写

一般是!= 或<>

SQL中外码有什么用?

主码的作用是为了标记表中信息的唯一性(例如学生的学号,身份证,工资编号等等),比如说要记录一个班的学生信息,如果同名的情况下怎么区分呢?就是通过主码(学号)他在一张表中一定是唯一的。并且要求输入记录时,主码不允许空。这是必须遵循的数据库的实体完整性规则。外码指在一个表中是主码另外一个表中不是主码,这样的字段我们把他定义为外码。例如:学生(学号,姓名,性别,年龄)主码 :学号课程(课程号,课程名,学分)主码:课程号选课(学号,课程号,成绩)主码(学号,课程号)外码:学号(他在学生表中是主码) 课程好(他在课程表中是主码)在选课表中学号和课程号都是外码。那么他们的取值要么为空,如果有值的话,这个值必须在学生表中存在。

mysql如何导出一个数据库相同表名的表数据和表结构

在命令行下mysql的数据导出有个很好用命令mysqldump,它的参数有一大把,可以这样查看: mysqldump 最常用的: mysqldump -uroot -pmysql databasefoo table1 table2 > foo.sql 这样就可以将数据库databasefoo的表table1,table2以sql形式导入foo.sql中,其中-uroot参数表示访问数据库的用户名是root,如果有密码还需要加上-p参数 C:Usersjack> mysqldump -uroot -pmysql sva_rec date_drv > e:date_drv.sql mysql的数据导入也是相当便捷的,如: mysql -uroot databasefoo < foo.sql 这样就可以将foo.sql的数据全部导入数据库databasefoo 1.导出整个数据库   mysqldump -u用户名 -p密码 数据库名 > 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql sva_rec > e:sva_rec.sql   2.导出一个表,包括表结构和数据   mysqldump -u用户名 -p 密码 数据库名 表名> 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql sva_rec date_rec_drv> e:date_rec_drv.sql   3.导出一个数据库结构   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec > e:sva_rec.sql 4.导出一个表,只有表结构   mysqldump -u用户名 -p 密码 -d数据库名 表名> 导出的文件名   C:Usersjack> mysqldump -uroot -pmysql -d sva_rec date_rec_drv> e:date_rec_drv.sql   5.导入数据库   常用source 命令   进入mysql数据库控制台,   如mysql -u root -p   mysql>use 数据库   然后使用source命令,后面参数为脚本文件(如这里用到的.sql)   mysql>source d:wcnc_db.sql

mysql 常用命令手册

之前介绍了一系列的mysql基础知识,今天我们将MySQL常用的功能命令整理出来,供大家参考使用!1.导出整个数据库 mysqldump -u 用户名 -p –default-character-set=latin1 数据库名 > 导出的文件名(数据库默认编码是latin1) mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql 2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql 3.导出一个数据库结构 mysqldump -u wcnc -p -d –add-drop-table smgp_apps_wcnc >d:wcnc_db.sql -d 没有数据 –add-drop-table 在每个create语句之前增加一个drop table 4.导入数据库 A:常用source 命令 进入mysql数据库控制台, 如mysql -u root -p mysql>use 数据库 然后使用source命令,后面参数为脚本文件(如这里用到的.sql) mysql>source wcnc_db.sql B:使用mysqldump命令 mysqldump -u username -p dbname < filename.sql C:使用mysql命令 mysql -u username -p -D dbname < filename.sql 启动与退出 1、进入MySQL:启动MySQL Command Line Client(MySQL的DOS界面),直接输入安装时的密码即可。此时的提示符是:mysql> 2、退出MySQL:quit或exit 库操作 1、创建数据库 命令:create database <数据库名> 例如:建立一个名为sqlroad的数据库 mysql> create database sqlroad; 2、显示所有的数据库 命令:show databases (注意:最后有个s) mysql> show databases; 3、删除数据库 命令:drop database <数据库名> 例如:删除名为 sqlroad的数据库 mysql> drop database sqlroad; 4、连接数据库 命令:use <数据库名> 例如:如果sqlroad数据库存在,尝试存取它: mysql> use sqlroad; 屏幕提示:Database changed 5、查看当前使用的数据库 mysql> select database(); 6、当前数据库包含的表信息: mysql> show tables; (注意:最后有个s) 表操作,操作之前应连接某个数据库 1、建表 命令:create table <表名> ( <字段名> <类型> [,..<字段名n> <类型n>]); mysql> create table MyClass( > id int(4) not null primary key auto_increment, > name char(20) not null, > sex int(4) not null default "′, > degree double(16,2)); 2、获取表结构 命令:desc 表名,或者show columns from 表名 mysql>DESCRIBE MyClass mysql> desc MyClass; mysql> show columns from MyClass; 3、删除表 命令:drop table <表名> 例如:删除表名为 MyClass 的表 mysql> drop table MyClass; 4、插入数据 命令:insert into <表名> [( <字段名>[,..<字段名n> ])] values ( 值 )[, ( 值n )] 例如,往表 MyClass中插入二条记录, 这二条记录表示:编号为的名为Tom的成绩为.45, 编号为 的名为Joan 的成绩为.99,编号为 的名为Wang 的成绩为.5. mysql> insert into MyClass values(1,"Tom",96.45),(2,"Joan",82.99), (2,"Wang", 96.59); 5、查询表中的数据 11)、查询所有行 命令:select <字段,字段,...> from < 表名 > where < 表达式 > 例如:查看表 MyClass 中所有数据 mysql> select * from MyClass; 12)、查询前几行数据 例如:查看表 MyClass 中前行数据 mysql> select * from MyClass order by id limit 0,2; 或者: mysql> select * from MyClass limit 0,2; 6、删除表中数据 命令:delete from 表名 where 表达式 例如:删除表 MyClass中编号为 的记录 mysql> delete from MyClass where id=1; 7、修改表中数据:update 表名 set 字段=新值,…where 条件 mysql> update MyClass set name="Mary"where id=1; 8、在表中增加字段: 1命令:alter table 表名 add字段 类型 其他; 3例如:在表MyClass中添加了一个字段passtest,类型为int(4),默认值为 5mysql> alter table MyClass add passtest int(4) default "′ 9、更改表名: 命令:rename table 原表名 to 新表名; 例如:在表MyClass名字更改为YouClass mysql> rename table MyClass to YouClass; 更新字段内容 update 表名 set 字段名 = 新内容 update 表名 set 字段名 = replace(字段名,"旧内容", 新内容") update article set content=concat(‘  ",content); 字段类型和数据库操作1.INT[(M)] 型:正常大小整数类型 2.DOUBLE[(M,D)] [ZEROFILL] 型:正常大小(双精密)浮点数字类型 3.DATE 日期类型:支持的范围是-01-01到-12-31。MySQL以YYYY-MM-DD格式来显示DATE值,但是允许你使用字符串或数字把值赋给DATE列 4.CHAR(M) 型:定长字符串类型,当存储时,总是是用空格填满右边到指定的长度 5.BLOB TEXT类型,最大长度为(2^16-1)个字符。 6.VARCHAR型:变长字符串类型 7.导入数据库表 创建.sql文件 先产生一个库如auction.c:mysqlbin>mysqladmin -u root -p creat auction,会提示输入密码,然后成功创建。 导入auction.sql文件 c:mysqlbin>mysql -u root -p auction < auction.sql。 通过以上操作,就可以创建了一个数据库auction以及其中的一个表auction。 8.修改数据库 在mysql的表中增加字段: alter table dbname add column userid int(11) not null primary key auto_increment; 这样,就在表dbname中添加了一个字段userid,类型为int(11)。 9.mysql数据库的授权 mysql>grant select,insert,delete,create,drop on *.* (或test.*/user.*/..) to 用户名@localhost identified by ‘密码"; 如:新建一个用户帐号以便可以访问数据库,需要进行如下操作: mysql> grant usage   -> ON test.*   -> TO testuser@localhost;   Query OK, 0 rows affected (0.15 sec)   此后就创建了一个新用户叫:testuser,这个用户只能从localhost连接到数据库并可以连接到test 数据库。下一步,我们必须指定testuser这个用户可以执行哪些操作:   mysql> GRANT select, insert, delete,update   -> ON test.*   -> TO testuser@localhost;   Query OK, 0 rows affected (0.00 sec)   此操作使testuser能够在每一个test数据库中的表执行SELECT,INSERT和DELETE以及UPDATE查询操作。现在我们结束操作并退出MySQL客户程序:   mysql> exit DDL操作1:使用SHOW语句找出在服务器上当前存在什么数据库: mysql> SHOW DATABASES; 2、创建一个数据库MYSQLDATA mysql> Create DATABASE MYSQLDATA; 3:选择你所创建的数据库 mysql> USE MYSQLDATA; (按回车键出现Database changed 时说明操作成功!) 4:查看现在的数据库中存在什么表 mysql> SHOW TABLES; 5:创建一个数据库表 mysql> Create TABLE MYTABLE (name VARCHAR(20), sex CHAR(1)); 6:显示表的结构: mysql> DESCRIBE MYTABLE; 7:往表中加入记录 mysql> insert into MYTABLE values (“hyq”,”M”); 8:用文本方式将数据装入数据库表中(例如D:/mysql.txt) mysql> LOAD DATA LOCAL INFILE “D:/mysql.txt”INTO TABLE MYTABLE; 9:导入.sql文件命令(例如D:/mysql.sql) mysql>use database; mysql>source d:/mysql.sql; 10:删除表 mysql>drop TABLE MYTABLE; 11:清空表 mysql>delete from MYTABLE; 12:更新表中数据 mysql>update MYTABLE set sex=”f”where name="hyq";

mysql导入时只有结构没有数据

在DOS的 MYSQL安装目录/BIN 目录下用下面命令:mysql -u username -p databasename use database_name然后使用下面这个命令mysql>source 111.sql当默认111.sql路径时,必须放在mysql里的bin里成功导入!!!~~Yeah..1.导出整个数据库mysqldump -u 用户名 -p 数据库名 > 导出的文件名mysqldump -u wcnc -p smgp_apps_wcnc > wcnc.sql2.导出一个表mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名mysqldump -u wcnc -p smgp_apps_wcnc users> wcnc_users.sql3.导出一个数据库结构

在本地电脑MySQL中怎么创建数据库(如何搭建mysql数据库)

一)连接MYSQL:格式:mysql-h主机地址-u用户名-p用户密码1、例1:连接到本机上的MYSQL首先在打开DOS窗口,然后进入mysql安装目录下的bin目录下,例如:D:mysqlin,再键入命令mysql-uroot-p,回车后提示你输密码,如果刚安装好MYSQL,超级用户root是没有密码的,故直接回车即可进入到MYSQL中了,MYSQL的提示符是:mysql>2、例2:连接到远程主机上的MYSQL假设远程主机的IP为:10.0.0.1,用户名为root,密码为123。则键入以下命令:mysql-h10.0.0.1-uroot-p123(注:u与root可以不用加空格,其它也一样)3、退出MYSQL命令exit(回车)(二)修改密码:格式:mysqladmin-u用户名-p旧密码password新密码1、例1:给root加个密码123。首先在DOS下进入目录C:mysqlin,然后键入以下命令:mysqladmin-uroot-password123注:因为开始时root没有密码,所以-p旧密码一项就可以省略了。2、例2:再将root的密码改为456mysqladmin-uroot-pab12password456(三)增加新用户:(注意:和上面不同,下面的因为是MYSQL环境中的命令,所以后面都带一个分号作为命令结束符)格式:grantselecton数据库.*to用户名@登录主机identifiedby"密码"例1、增加一个用户test1密码为abc,让他可以在任何主机上登录,并对所有数据库有查询、插入、修改、删除的权限。首先用以root用户连入MYSQL,然后键入以下命令:grantselect,insert,update,deleteon*.*totest1@"%"Identifiedby"abc";但例1增加的用户是十分危险的,你想如某个人知道test1的密码,那么他就可以在internet上的任何一台电脑上登录你的mysql数据库并对你的数据可以为所欲为了,解决办法见例2。例2、增加一个用户test2密码为abc,让他只可以在localhost上登录,并可以对数据库mydb进行查询、插入、修改、删除的操作(localhost指本地主机,即MYSQL数据库所在的那台主机),这样用户即使用知道test2的密码,他也无法从internet上直接访问数据库,只能通过MYSQL主机上的web页来访问了。grantselect,insert,update,deleteonmydb.*totest2@localhostidentifiedby"abc";如果你不想test2有密码,可以再打一个命令将密码消掉。grantselect,insert,update,deleteonmydb.*totest2@localhostidentifiedby"";(四)显示命令1、显示数据库列表:showdatabases;刚开始时才两个数据库:mysql和test。mysql库很重要它里面有MYSQL的系统信息,我们改密码和新增用户,实际上就是用这个库进行操作。2、显示库中的数据表:usemysql;//打开库showtables;3、显示数据表的结构:describe表名;4、建库:createdatabase库名;5、建表:use库名;createtable表名(字段设定列表);6、删库和删表:dropdatabase库名;droptable表名;7、将表中记录清空:deletefrom表名;8、显示表中的记录:select*from表名;MySQL导入导出命令1.导出整个数据库mysqlmp-u用户名-p数据库名>导出的文件名mysqlmp-uwcnc-psmgp_apps_wcnc>wcnc.sql2.导出一个表mysqlmp-u用户名-p数据库名表名>导出的文件名mysqlmp-uwcnc-psmgp_apps_wcncusers>wcnc_users.sql3.导出一个数据库结构mysqlmp-uwcnc-p-d--add-drop-tablesmgp_apps_wcnc>d:wcnc_db.sql-d没有数据--add-drop-table在每个create语句之前增加一个droptable4.导入数据库常用source命令进入mysql数据库控制台,如mysql-uroot-pmysql>use数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysql>sourced:wcnc_db.sql(注:如果写成sourced:wcnc_db.sql,就会报语法错误

、Linux的root用户预实现定期备份mysql数据库的要求,如每月的1号和15号的晚12点执行备份操作,请说明如何

方法一、适合所有格式的mysql数据库,通过对数据库导出导进写个脚本定时执行:1.导出整个数据库 mysqldump -u 用户名 -p 数据库名 > 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc > /存放路径/wcnc.sql2.导出一个表 mysqldump -u 用户名 -p 数据库名 表名> 导出的文件名 mysqldump -u wcnc -p smgp_apps_wcnc users> /存放路径/wcnc_users.sql3.导出一个数据库结构 mysqldump -u wcnc -p -d --add-drop-table smgp_apps_wcnc >/存放路径/wcnc_db.sql 定义:-d 没有数据--add-drop-table 在每个create语句之前增加一个drop table 4.导入数据库 常用source 命令 进入mysql数据库控制台:如mysql -u root -p mysql>use 数据库方法二、针对mysql数据表格式为MyISAM的假如数据文件在/var/lib/mysql那么直接写个脚本cp -r /var/lib/mysql /备份到的文件夹路径隔机备份用rsync增量,或定时完整备份。

求windows下,MySQL的导入导出命令?说明每个命令的作用,本人只是一个初学者

怎样备份mysql中所有的数据库(sql怎么备份数据库)

关键字:mysql还原或者导入数据库命令:mysql-uroot--password=root备份数据库命令:mysqlmp-uroot--password=root--databasehelloworld>helloworld_backup.sql其他用法:1.导出整个数据库mysqlmp-u用户名-p数据库名>导出的文件名mysqlmp-uwcnc-psmgp_apps_wcnc>wcnc.sql2.导出一个表mysqlmp-u用户名-p数据库名表名>导出的文件名mysqlmp-uwcnc-psmgp_apps_wcncusers>wcnc_users.sql3.导出一个数据库结构mysqlmp-uwcnc-p-d--add-drop-tablesmgp_apps_wcnc>d:wcnc_db.sql-d没有数据--add-drop-table在每个create语句之前增加一个droptable4.导入数据库常用source命令进入mysql数据库控制台,如mysql-uroot-pmysql>use数据库然后使用source命令,后面参数为脚本文件(如这里用到的.sql)mysql>sourced:wcnc_db.sql

mysql常用命令都有哪些

1.导出整个数据库mysqldump-u用户名-p–default-character-set=latin1数据库名》导出的文件名(数据库默认编码是latin1)23mysqldump-uwcnc-psmgp_apps_wcnc》wcnc.sql2.导出一个表mysqldump-u用户名-p数据库名表名》导出的文件名23mysqldump-uwcnc-psmgp_apps_wcncusers》wcnc_users.sql3.导出一个数据库结构mysqldump-uwcnc-p-d–add-drop-tablesmgp_apps_wcnc》d:wcnc_db.sql23-d没有数据–add-drop-table在每个create语句之前增加一个droptable4.导入数据库A:常用source命令23进入mysql数据库控制台,45如mysql-uroot-p67mysql》use数据库89然后使用source命令,后面参数为脚本文件(如这里用到的.sql)1011mysql》sourcewcnc_db.sql1213B:使用mysqldump命令1415mysqldump-uusername-pdbname《filename.sql1617C:使用mysql命令1819mysql-uusername-p-Ddbname《filename.sql启动与退出1、进入MySQL:启动MySQLCommandLineClient(MySQL的DOS界面),直接输入安装时的密码即可。此时的提示符是:mysql》2、退出MySQL:quit或exit5.创建数据库命令:createdatabase《数据库名》例如:建立一个名为xhkdb的数据库mysql》createdatabasexhkdb;6.显示所有的数据库命令:showdatabases(注意:最后有个s)mysql》showdatabases;7.删除数据库命令:dropdatabase《数据库名》8.连接数据库命令:use《数据库名》例如:如果xhkdb数据库存在,尝试存取它:9.查看当前使用的数据库mysql》selectdatabase();10.当前数据库包含的表信息:mysql》showtables;(注意:最后有个s)

将DBF数据库转换成SQLServer表

1、前言 随着计算机技术的发展,客户机/服务器(Client/Server)体系结构的数据库系统应用越来越广泛,而Foxbase、Foxpro是我国近阶段使用较广的数据库开发软件,很多数据都存在DBF表中,本文将介绍如何将DBF表中的数据转换到SQL Server表中。   2、用Visual Basic编程实现转换 用Visual Basic编程实现转换,即通过SQL Server提供的ODBC接口(开放数据库接口)及Visual Basic中应用数据访问,建立Visual Basic与SQL Server的连接,由Visual Basic向SQL Server提交创建表命令,然后将.dbf的每条记录提交给SQL Server,完成数据转换。DBF的数据结构是(examp1.dbf): 字段名类型字段长度字段内容   Id C 4货物编号   name C 20货物名称   实现步骤:   (1)在数据库服务器”sqlserver1”中建立数据库sqlexample,建立一个表”example1”,其结构与examp1.dbf结构相同。其结构是: 字段名类型字段长度字段内容   Id C 4货物编号   name C 20货物名称   (2)、ODBC的设置:在客户机上进入Windows的控制面板( Control panel )。双击ODBC数据源(32位)图标,进行数据库的ODBC驱动设置。在用户DSN下,按“添加”,选择SQL Server,在名称输入”sql1”,服务器输入”sqlserver1”,用户名输入”sa”,口令输入”123456”,测试是否连通。   (3)、在Visual Basic建立一工程,添加“引用”Microsoft ActiveXData Objects2.1 Library和Microsoft DAO 3.51 object library。在Form1上建一个Command1,将Command1的Caption改为转换。程序清单如下:   Private Sub Command1_Click()   Dim db As Database   Dim tb As Recordset   ‘打开C:examp1.dbf   Set db=OpenDatabase(c:,False,False,”foxpro 2.5”)   Set tb=db.OpenRecordset(examp1)   Dim conn1 As ADODB.Connection   Dim cmd1 As ADODB.Command   Set conn1=New ADODB.Connection   Set cmd1=New ADODB.Command   cons1=”ODBC;DATABASE=sqlexample;UID=sa;PWD=123456;DSN=sql1”   conn1.Open cons1   Set cmd1.ActiveConnection=conn1   Do while not tb.EOF   Cmds1=”insert into example1 values(‘“& tb.Fields(0) &”",‘“& tb.Fields(1)   &”")”   cmd1.CommandText=cmds1   cmd1.Execute   tb.MoveNext   Loop   MsgBox“载入完毕”,,”提示”   Cnn1.Close   Unload me   End Sub

php连接mysql数据库,报错Function mysql_connect() is deprecated?

info.php在CentOS64位虚拟机运行的时候,其中MySQL版本那一栏是空白信息。我查看了info.php源码,开始以为是MySQL数据库的用户名和密码填写错了,仔细检查没有错误之后,便查看了Apache的error_log,得到如下消息:mysql_connect():Nosuchfileordirectory在网上查了一下,说是本地socket设置与默认的不一样,导致php无法找到mysql的socket文件。根据网上提供的方法,需要做如下操作。首先,在MySQL中用status查看数据库状态,如下所示:mysqlVer14.14Distrib5.1.69,forredhat-Linux-gnu(x86_64)usingreadline5.1Connectionid:10Currentdatabase:Currentuser:root@localhostSSL:NotinuseCurrentpager:stdoutUsingoutfile:""Usingdelimiter:;Serverversion:5.1.69SourcedistributionProtocolversion:10Connection:LocalhostviaUNIXsocketServercharacterset:latin1Dbcharacterset:latin1Clientcharacterset:latin1Conn.characterset:latin1UNIXsocket:/var/lib/mysql/mysql.sockUptime:20hours55min30sec其中,标红的部分是我们需要的。然后打开php.ini文件,需要将mysql.default_socket、mysqli.default_socket、pdo_mysql.default_socket的值设置为标红后面的那个目录。重启apache服务器,后续info.php工作正常,MySQL的版本信息能够正常显示了。

使用net start mysql命令显示MySQL 服务正在启动 ..MySQL 服务无法启动。 服务没有报告任何错误?

检查/etc/mysql/mysql.conf.d下是不是有.cnf扩展名的配置文件,如果没有就加一个

sqlplus中如何把select的结果取到变量中

楼主的前提是不用PL/SQL而SELECT INTO 本身就是PL/SQL的语法[PHP]SQL> COLUMN RESULT NEW_VALUE VSQL> SELECT 1 RESULT FROM DUAL; RESULT---------- 1SQL> SELECT 1 FROM DUAL WHERE 1 = &V;原值 1: SELECT 1 FROM DUAL WHERE 1 = &V新值 1: SELECT 1 FROM DUAL WHERE 1 = 1 1---------- 1.[/PHP]

SQL里select 命令中的INTO短语的三部分内容:ARRAY

数组是一个在内存占具连续空间的变量...<br>一维数组只能是同一种类型的..<br>例如你定义一个数组int a[10];<br>中括号里面的10是代表它的长度..<br>上面那个数组的意思是:<br>存储10个整型数据的变量..<br>因为数组的第一个是表示为a[0]<br>所以数组的最后一个元素是a[9]<br>不知道这样说你懂不懂随便一本C语言的书里面就有对数组的介绍...你可以去找C语言的书

select * into A表 from B表是属于哪种SQL

SQL语句都是源于一种逻辑模式,具体表现出来的东西有差别. 多用用就习惯了....我C# .VB.NET VB6, 还有MYSQL 和ORACLE以及MSSQL都习惯了,也就没什么区别了.

mysql 为什么这句不能运行? select * into temp from users

insert into temp() values() select * from users这样试试!
 首页 上一页  11 12 13 14 15 16 17 18 19 20 21  下一页  尾页