summaryrefslogtreecommitdiffstats
path: root/mysql-test/suite/innodb/r/tablespace_per_table_windows.result
diff options
context:
space:
mode:
Diffstat (limited to 'mysql-test/suite/innodb/r/tablespace_per_table_windows.result')
-rw-r--r--mysql-test/suite/innodb/r/tablespace_per_table_windows.result48
1 files changed, 48 insertions, 0 deletions
diff --git a/mysql-test/suite/innodb/r/tablespace_per_table_windows.result b/mysql-test/suite/innodb/r/tablespace_per_table_windows.result
new file mode 100644
index 00000000..14253baa
--- /dev/null
+++ b/mysql-test/suite/innodb/r/tablespace_per_table_windows.result
@@ -0,0 +1,48 @@
+#
+# Test the limits of a file-per-table tablespace name. MySQL combines
+# the database name with the table name to make a unique table name.
+#
+SET default_storage_engine=InnoDB;
+#
+# MySQL limits each database and tablename identifier to 64 characters
+# of up to 3 bytes per character, corresponding to 192 bytes.
+#
+CREATE DATABASE `this_sixty_five_byte_name_is_too_long____________________________`;
+ERROR 42000: Incorrect database name 'this_sixty_five_byte_name_is_too_long____________________________'
+CREATE DATABASE `this_sixty_four_byte_name_is_not_too_long_______________________`;
+USE `this_sixty_four_byte_name_is_not_too_long_______________________`;
+#
+# A 64 character tablename can be created in a 64 character database name
+#
+CREATE TABLE `this_sixty_four_byte_name_is_not_too_long_______________________`.`this_sixty_four_byte_name_is_not_too_long_______________________` (a SERIAL);
+#
+# A 65 character tablename is too long.
+#
+CREATE TABLE `test`.`this_sixty_five_byte_name_is_too_long____________________________` (a SERIAL);
+ERROR 42000: Incorrect table name 'this_sixty_five_byte_name_is_too_long____________________________'
+CREATE TABLE `this_sixty_four_byte_name_is_not_too_long_______________________`.`this_sixty_five_byte_name_is_too_long____________________________` (a SERIAL);
+ERROR 42000: Incorrect table name 'this_sixty_five_byte_name_is_too_long____________________________'
+#
+# Show the successfully created database and table
+#
+SHOW CREATE TABLE `this_sixty_four_byte_name_is_not_too_long_______________________`.`this_sixty_four_byte_name_is_not_too_long_______________________`;
+Table Create Table
+this_sixty_four_byte_name_is_not_too_long_______________________ CREATE TABLE `this_sixty_four_byte_name_is_not_too_long_______________________` (
+ `a` bigint(20) unsigned NOT NULL AUTO_INCREMENT,
+ UNIQUE KEY `a` (`a`)
+) ENGINE=InnoDB DEFAULT CHARSET=latin1 COLLATE=latin1_swedish_ci
+---- list_files MYSQLD_DATADIR/this_sixty_four_byte_name_is_not_too_long_______________________
+db.opt
+this_sixty_four_byte_name_is_not_too_long_______________________.frm
+this_sixty_four_byte_name_is_not_too_long_______________________.ibd
+SELECT name FROM information_schema.innodb_sys_tables WHERE name LIKE '%long%';
+name
+this_sixty_four_byte_name_is_not_too_long_______________________/this_sixty_four_byte_name_is_not_too_long_______________________
+SELECT name FROM information_schema.innodb_sys_tablespaces WHERE name LIKE '%long%';
+name
+this_sixty_four_byte_name_is_not_too_long_______________________/this_sixty_four_byte_name_is_not_too_long_______________________
+SELECT file_name, tablespace_name FROM information_schema.files WHERE file_name LIKE '%long%';
+#
+# Cleanup
+#
+DROP DATABASE `this_sixty_four_byte_name_is_not_too_long_______________________`;