Create Table with structure of another existing table

Create Table with structure of another existing table

Ok, this has many valid uses such as if you need to create backups or the ability to undo changes, you would want to create new tables with the same structure as another. Here is how you do it.
[i:7ed9581493]
Also remember Indexes such as PRIMARY KEYS [b:7ed9581493]will not be preserved[/b:7ed9581493] so you will have to readd them manually.[/i:7ed9581493]

[code:1:7ed9581493]CREATE TABLE NewName AS SELECT * FROM TableStructureYouWantToCopy;[/code:1:7ed9581493]


Another way to do the same thing (although in MySQL 3.23 it doesn't work - probably version 4+ will support it) is:

[code:1:7ed9581493]CREATE TABLE NewName LIKE TableStructureYouWantToCopy[/code:1:7ed9581493]


[b:7ed9581493]Restore PRIMARY KEY[/b:7ed9581493]

As I mentioned above you will need to recreate any Indexes/PRIMARY KEYS

Here is an example of readding a PRIMARY KEY with an AUTO_INCREMENT field:

[b:7ed9581493]First make the field NOT NULL[/b:7ed9581493]

[code:1:7ed9581493]
ALTER TABLE tableName MODIFY FieldNAME INT(18) NOT NULL;
[/code:1:7ed9581493]

[b:7ed9581493]Create The Primary Key[/b:7ed9581493]
[code:1:7ed9581493]ALTER TABLE tableName ADD CONSTRAINT PRIMARY KEY(FieldName);[/code:1:7ed9581493]

[b:7ed9581493]ADD AUTO_INCREMENT[/b:7ed9581493]
[quote:7ed9581493]ALTER TABLE tableName MODIFY FieldNAME INT(18) NOT NULL AUTO_INCREMENT;[/quote:7ed9581493]

If there is an easier way then this then please let me know :)



Tags:

existing, tablecreate, tableok, valid, backups, undo, indexes, primary, preserved, readd, manually, newname, select, tablestructureyouwanttocopy, mysql, doesn, restore, recreate, readding, auto_increment, null, alter, tablename, modify, fieldname, int, constraint,

Latest Articles

  • Virtualbox Error Cannot register the hard disk because a hard disk with UUID already exists solution
  • kernel: [549267.368859] mate-terminal[7871]: segfault at 2000000101 ip 00007f5d0a9548f0 sp 00007fff7012c610 error 4 in libgobject-2.0.so.0.4800.2[7f5d0a920000+52000]
  • apcupsd how to setup and monitor APC UPS units
  • How To Password Reset, Recover, Bypass, Remove and Unlock on Windows 10,8,7,Vista,XP,NT,2000,2003,2008,2012,2016,2019 Administrative Login Programs
  • Nvidia Ubuntu Linux Screentearing Video with solution driver
  • ?? Question Marks for time, permissions and size of a file?
  • mdadm how to stop a check
  • access denied by acl file qemu-kvm: bridge helper failed
  • Linux NIC connecting at 100M instead of 1000M gigabit speeds? It could be overheating
  • "This kernel requires the following features not present on the CPU: cmov Unable to boot - please use a kernel appropriate for your CPU.
  • http://vault.centos.org/5.9/os/i386/repodata/filelists.xml.gz: [Errno -1] Metadata file does not match checksum solution
  • Linux Ubuntu Wifi Disabled Only Works When Laptop Plugged Into Wall AC Power
  • CentOS 6 impossible to compile a newer libguestfs
  • chroot
  • How To Get Started on Ubuntu with gpt-2 OpenAI Text Prediction
  • Remove cloud-init in your VM
  • QEMU-KVM KVM Command Line Practical Guide
  • Linux How To Change NIC Name to eth0 instead of enps33 or enp0s25
  • virt-resize: error: libguestfs error: could not create appliance through libvirt.
  • Asterisk Does Not Retry When Authentication Fails