What is MIME type "text/x-sql"?
A MIME type is a string that tells browsers and other tools how to handle a particular kind of file.
text/x-sql marks plain text files that contain SQL code.It tells programs the file holds database commands and schema definitions in simple text.
Files with this MIME type let tools like code editors and database interfaces know to apply SQL-specific formatting and syntax checking.
Files using text/x-sql help streamline database work and automation.
They commonly store queries, table definitions, and utility scripts used in various database tasks.
They are found in many file types such as SQL, INC, UDF, PRC, TAB, DDL, DB2, CQL, VIW, MYSQL, and PGSQL.
- Primary Role: Indicates code for managing databases.
- Benefit: Helps applications apply SQL syntax highlighting and error checking.
- Purpose: Supports automation and manual editing of SQL queries and definitions.
- Usage: Common in development environments and database management tools.
Associated file extensions
.sql, .inc, .udf, .prc, .tab, .ddl, .db2, .cql, .viw, .mysql, .pgsql
Usage Examples
HTTP Header
When serving content with this MIME type, set the Content-Type header:
Content-Type: text/x-sql
HTML
In HTML, you can specify the MIME type in various elements:
<a href="file.dat" type="text/x-sql">Download file</a>
Server-side (Node.js)
Setting the Content-Type header in Node.js:
const http = require('http');
http.createServer((req, res) => {
res.setHeader('Content-Type', 'text/x-sql');
res.end('Content here');
}).listen(3000);
Associated file extensions
.sql, .inc, .udf, .prc, .tab, .ddl, .db2, .cql, .viw, .mysql, .pgsql
FAQs
What is the text/x-sql MIME type used for?
The text/x-sql MIME type indicates that a file contains Structured Query Language (SQL) commands in a plain text format. It is used by web servers and applications to identify database scripts, such as those found in .sql or .ddl files, ensuring they are treated as code rather than generic text.
How do I configure Apache to serve SQL files correctly?
To ensure Apache serves SQL files with the correct MIME type, add the following line to your .htaccess file or main configuration: AddType text/x-sql .sql. You can also add other extensions like .mysql or .ddl to this directive if needed.
How do I set up Nginx to recognize text/x-sql?
In Nginx, open your mime.types file or the http block of your configuration and add the mapping: text/x-sql sql;. This tells the server to send the text/x-sql header whenever a file with the .sql extension is requested.
What is the difference between text/x-sql and application/sql?
application/sql is the officially registered IANA standard for SQL content, whereas text/x-sql is an older, non-standard type (indicated by the x- prefix). However, text/x-sql is still widely used and supported by many legacy browsers and text editors for backward compatibility.
Why does my browser download .sql files instead of displaying them?
Browsers may download the file if the server sends a Content-Disposition: attachment header or if the browser does not natively render text/x-sql. To force display in the browser, ensure the server sends Content-Disposition: inline and consider using text/plain if strict MIME handling prevents rendering.
Is it safe to host files with the text/x-sql MIME type publicly?
Generally, no. Files with this MIME type, such as database dumps or .inc scripts, often contain sensitive schema definitions, table structures, or even data. You should configure your server to deny access to these files to prevent information leakage.
Which applications open files with the text/x-sql content type?
Since these are plain text files, they can be opened by any code editor like VS Code, Sublime Text, or Notepad++. Specialized database tools like MySQL Workbench or pgAdmin also use this MIME type to identify scripts they can execute against a database.
General FAQ
What is a MIME type?
A MIME (Multipurpose Internet Mail Extensions) type is a standard that indicates the nature and format of a document, file, or assortment of bytes. MIME types are defined and standardized in IETF's RFC 6838.
MIME types are important because they help browsers and servers understand how to process a file. When a browser receives a file from a server, it uses the MIME type to determine how to display or handle the content, whether it's an image to display, a PDF to open in a viewer, or a video to play.
MIME types consist of a type and a subtype, separated by a slash (e.g., text/html, image/jpeg, application/pdf). Some MIME types also include optional parameters.
How do I find the MIME type for a file?
You can check the file extension or use a file identification tool such as file --mime-type on the command line. Many programming languages also provide libraries to detect MIME types.
Why are multiple MIME types listed for one extension?
Different applications and historical conventions may use alternative MIME identifiers for the same kind of file. Showing them all helps ensure compatibility across systems.