Difference between revisions of "SQL"

From Organic Design wiki
m (See also)
(rm old info and add intro to joins)
Line 17: Line 17:
 
mysqlcheck --auto-repair DBNAME -u USER -p
 
mysqlcheck --auto-repair DBNAME -u USER -p
 
</source>
 
</source>
 
== Dealing with duplicates on import ==
 
See [[Backup]]
 
 
== Documentation ==
 
*[http://www.sql-tutorial.com/ SQL Tutorial] ''- A nice tutorial on SQL''
 
*[http://dev.mysql.com/doc/index.html Official MySQL Documentation]
 
*[http://www.w3schools.com/sql/sql_join.asp W3C SQL Tutorial] [http://www.w3schools.com/sql/sql_quickref.asp (QuickRef)]
 
 
== MySQL vs MSSQL ==
 
*[http://www.x7media.com/resources/SQL_Differences_Between_Microsoft_SQL_Server_and_MySQL.asp List of common differences between MySQL and MSSQL]
 
 
== MySQL News & Information ==
 
*[http://dev.mysql.com/doc/falcon/en/falcon-overview.html Falcon Overview] ''- the new MySQL 6 Falcon storage engine''
 
*[http://dev.mysql.com/tech-resources/articles/mysql-storedprocedures.html MySQL Stored procedures & triggers]
 
 
== RODBC ==
 
Using RODBC to interact with R requires the user to configure the system as described in the file README after installing [http://cran.stat.auckland.ac.nz/web/packages/RODBC/index.html RODBC].
 
;See
 
*http://www.unixODBC.org
 
*http://www.easysoft.com/developer/interfaces/odbc/linux.html (tutorial using unixODBC)
 
 
== Towards SQL for P2P environments ==
 
*[[PeerPedia]]
 
*[[MediaWikiLite]]
 
*[http://pier.cs.berkeley.edu The PIER Project]
 
*[[w:Prefix Hash Tree|Prefix Hash Trees]]
 
*[http://www.cs.huji.ac.il/~ittaia/papers/AAY-OPODIS05.pdf Skip B-Trees]
 
*[http://yoshinorimatsunobu.blogspot.com/2010/10/using-mysql-as-nosql-story-for.html Using MySQL as a NoSQL - A story for exceeding 750,000 qps on a commodity server] ''- Yoshinori Matsunobu's blog''
 
  
 
== Database procedures ==
 
== Database procedures ==
Line 60: Line 31:
 
*[https://stackoverflow.com/questions/5836623/getting-lock-wait-timeout-exceeded-try-restarting-transaction-even-though-im Good thread on table lock problems and solutions]
 
*[https://stackoverflow.com/questions/5836623/getting-lock-wait-timeout-exceeded-try-restarting-transaction-even-though-im Good thread on table lock problems and solutions]
 
*[http://tlug.dnho.net/?q=node/276 Convert a MySQL DB from latin1 to UTF8]
 
*[http://tlug.dnho.net/?q=node/276 Convert a MySQL DB from latin1 to UTF8]
 +
*[http://www.sql-tutorial.com/ SQL Tutorial] ''- A nice tutorial on SQL''
 +
*[http://dev.mysql.com/doc/index.html Official MySQL Documentation]
 +
*[http://www.w3schools.com/sql/sql_join.asp W3C SQL Tutorial] [http://www.w3schools.com/sql/sql_quickref.asp (QuickRef)]
 +
*[https://www.databasestar.com/sql-joins/ Introduction to SQL joins]
 +
*[http://www.x7media.com/resources/SQL_Differences_Between_Microsoft_SQL_Server_and_MySQL.asp List of common differences between MySQL and MSSQL]

Revision as of 11:15, 8 June 2018

Broom icon.svg The content of this article requires cleaning up to meet OD's quality standards. Check the wiki best practices for guidelines on improving article and categorisation quality.

SQL (Structured Query Language) is a computer language used to create, retrieve, update and delete data from relational database management systems. SQL has been standardised by both ANSI and ISO.

SQL is commonly spoken either as the names of the letters ess-cue-el, or like the word sequel. The official pronunciation of SQL according to ANSI is ess-cue-el. However, each of the major database products (or projects) containing the letters SQL has its own convention: MySQL is officially and commonly pronounced "My Ess Cue El"; PostgreSQL is expediently pronounced postgres (being the name of the predecessor to PostgreSQL); and Microsoft SQL Server is commonly spoken as Microsoft-sequel-server. See MediaWikiLite for information about SQLite support in MediaWiki, or MSSQL for information about Microsoft SQL Server support. We're now using MariaDB for our SQL server which is a drop-in replacement for MySQL but is fully open source and more efficient too.

Backup & restore

See backup for details about this as it's doesn't outside the SQL environment so doesn't belong in this article. But don't forget to set the default character set to the same as the dump used when you import the data!

To restore only a single database from a full dump use the following:

mysql -D DBNAME -o DBNAME < dump.sql

Fixing crashed tables

To fix a crashed table just use repair TABLENAME from the MySQL command line, or to automatically scan all tables and fix them run the following from the shell.

mysqlcheck --auto-repair DBNAME -u USER -p

Database procedures

See also