我将在C++中使用SQLite,所以我决定先学习它。但仍然是我的问题是,SQL命令是非常像SQLite还是我应该在SQLite之前学习它?首先学什么,SQLite或SQL?
4
A
回答
8
我建议在SQLite的SQL版本之前学习标准SQL。 SQLite允许很多数据库不允许的东西(比如自动类型转换和不完整的GROUP BY子句)。此外,SQLite中的所有内容都以字符串形式存储,但其他版本的SQL并非如此。
大部分SQL使用情况在SQLite和标准SQL中都是相同的,但值得了解陷阱。 SQLite让你摆脱标准SQL所没有的各种东西。如果你从SQLite开始,那么当你移动到另一个数据库时会遇到很多麻烦。但是,如果您从更标准的SQL实现(比如PostgreSQL或SQL Server)开始,那么下载到SQLite将会非常简单。
您可能要研究一些SQLite的文档/前/后同时学习标准SQL让你知道的区别:
- SQL As Understood By SQLite
- SQL Features That SQLite Does Not Implement
- Distinctive Features Of SQLite
而且,因为您将要使用C++中的SQLite:
我不是在这里批评的SQLite。 SQLite是一个非常棒的嵌入式数据库,并且非常适合它的用途。问题在于,从松散的环境(如SQLite甚至MySQL)到更严格的环境(PostgreSQL,SQL Server,Oracle,...)都会变得困难和令人沮丧。从标准(或“正确”)方式开始可能会节省一些痛苦和痛苦。
1
你应该一起学习,因为学习SQL你需要一个SQL引擎,SQLite就是这样。
请注意,SQLite并没有实现所有的SQL语言,但由于库的简单性,它是一个开始学习它的好地方。一旦您熟悉SQL的基础知识(数据定义语言和插入/更新/选择语句),您就可以开始转向高级概念(事务,触发器等),并可以继续进行完整的关系数据库管理支持整个SQL语言的系统。
相关问题
- 1. 首先学习Silverlight或WPF?
- 2. 首先会发生什么,MovieClip.onLoad()或Event.ENTER_FRAME?
- 3. Jquery首先加载什么
- 4. 什么首先执行?
- 5. 首先要学习什么创建聊天室?
- 6. 学习Ruby,但首先找出它是什么?
- 7. 我应该先学什么?
- 8. 为什么windbg命令首先。要么 !
- 9. SQL Server SELECT首先
- 10. WP8,SQL Compact Edition或Sqlite使用什么?
- 11. SQLite或首选项
- 12. 哪种语言首先首先引入“in”关键字:SQL或Object Pascal?
- 13. 什么首先执行:ToggleButton.IsChecked绑定更新或命令绑定?
- 14. 什么是首先处理的:aspx或aspx.vb代码?
- 15. 首先发生什么,CSS或JS事件?
- 16. 什么应该首先在HTML,锚点或标题?
- 17. IIS管道:首先发生什么:URL重写或绑定?
- 18. IIS管道:首先发生什么:URL Rewrite或HttpHandler?
- 19. 应该首先验证什么 - hostReachability或netReachability?
- 20. 什么应该首先 - 设计模式或代码?
- 21. 什么首先发生,铸造或移位[C++]
- 22. 首先做什么:特征选择或模型参数设置?
- 23. MySQL首先执行什么操作:SELECT或HAVING?
- 24. 为什么它首先调用bool_function?
- 25. 什么时候android首先做布局?
- 26. 为什么首先需要GUID属性?
- 27. php header首先发生什么事?
- 28. WPF/Silverlight首先开始学习?
- 29. sqlite EF6代码首先不创建表
- 30. LINQ to SQL:首先调用
这个问题没有道理。 SQLite **是一个SQL数据库。 – 2011-06-04 04:29:18
一旦掌握了SQLite,应该很容易发现与其他SQL DBMS的区别,相反也应该是真实的。许多SQL命令应该在SQLite和成熟的基于服务器的SQL解决方案上以相同的方式运行。 @Matt Ball,对你来说可能没有意义,因为你知道两者,但显然不是OP的情况。 – zneak 2011-06-04 04:29:34
@Matt球。 OP可能认为“SQL”与“SQL Server”是同义的。其实并非如此。但我怀疑这就是OP的意思。 – Asaph 2011-06-04 04:32:01