Jane  Reid

Jane Reid


CodeIgniter Schema: Expressive Table Definitions


Schema allows you to write your migrations (and define your database tables) in pure, beautiful PHP. No more feeding the DBForge library raw SQL fragments or dumping and loading at the command line. Schema lets you design your database in your migrations with ultimate ease.


Schema::create_table('users', function($table){


Schema requires at minimum PHP 5.1.2 (although 5.3 is recommended) and CodeIgniter 2.0.0.


Schema is easy to install using CodeIgniter Sparks. Simply install schema:

$ php tools/spark install schema

...and load the Spark when you want to use it:


Alternatively, you can download the repository through GitHub, extract the libraries/Schema.php and move it to the application/libraries directory. Then load it by calling $this->load->library.

Creating Tables

The Schema::create_table() function allows you to define and create a table in one fell swoop. It takes two parameters: the table name as a string, and a closure function, or 'block', (which enables the nice schema defining DSL).

This function takes a single parameter, which is an instance of Schema_Table_Definition. You can then call methods on this object to define the schema for your database tables.

Schema::create_table('users', function($table){
    // Definition goes in here

If you're not running PHP5.3, you can pass through FALSE (boolean) and create_table() will return the table object directly. Finish your statements with a call to $table->create_table().

$table = Schema::create_table('users', FALSE);


Data Types

Schema_Table_Definition has a bunch of methods that allow you to create data types. These are all reasonably self-explanatory:

  • integer($name) - create an INT column
  • tinyint($name) - create an TINYINT column
  • string($name, $constraint = 200) - create a VARCHAR column (with optional constraint)
  • text($name) - create a TEXT column
  • longtext($name) - create a LONGTEXT column
  • date($name) - create a DATE column
  • datetime($text) - create a DATETIME column
  • decimal($name, $constraint = '10,2') - create an DECIMAL column (with optional constraint)
  • boolean($name) - MySQL doesn't have a native boolean type, so we create a TINYINT

There are also two special methods to speed up your development.

auto_increment_integer($name) allows you to specify an auto_increment INT (with required primary keys). This is most helpful for adding an id column:


timestamps() automatically generates two columns, created_at and updated_at, both DATETIME columns.


You can add keys (indexes) through two functions, primary_key($name), and key($name, $primary = FALSE). primary_key() is a small wrapper around key().

Modifying Tables

Schema also contains a series of functions that allow you to modify an existing table.

Add Columns

Schema::add_column() lets you add a column to an existing table very simply. It takes three parameters, the table name, the column name and the column data type.

Schema::add_column('users', 'rank', 'integer');

Remove Columns

Schema::remove_column() lets you remove a column from a database table.

Schema::remove_column('users', 'rank');

Rename Columns

Schema::rename_column() lets you rename a column in a database table.

Schema::rename_column('users', 'rank', 'position');

Modify Columns

Schema::modify_column() allows you to modify the type and properties of a column.

Schema::modify_column('users', 'rank', 'string', array('constraint' => 250));

Running Unit Tests

NOTE: In order to run the test suite PHP5.3 is required

Schema comes with a unit test suite to ensure that the software remains stable and refactorable. It uses the very simple and lightweight PHP testing framework Inferno. Inferno is tucked away in a submodule:

$ cd path_to_schema_repo/
$ git submodule init
$ git submodule update

Then, all it takes is a call to tests/all.php to run the entire test suite.

$ php tests/all.php

You can also specify particular files in the suite by calling that file directly:

$ php tests/Schema_test.php

Release Notes

  • 0.2.0
    • Added the ability to add a column after another
    • Added a boolean() method
  • 0.1.0
    • Initial Release

Download Details:

Author: jamierumbelow
Source Code: https://github.com/jamierumbelow/codeigniter-schema


What is GEEK

Buddha Community

CodeIgniter Schema: Expressive Table Definitions
Brain  Crist

Brain Crist


SCHEMAS in SQL Server -MS SQL Server – Zero to Hero Query Master


This is part 3 of “MS SQL Server- Zero to Hero” and in this article, we will be discussing about the SCHEMAS in SQL SERVER. Before getting into this article, please consider to visit previous articles in this series from below,

A glimpse of previous articles
Part 1

In part one, we learned the basics of data, database, database management system, and types of DBMS and SQL.

Part 2
  • We learned to create a database and maintain it using SQL statements.
  • Best practice methods were also mentioned.

#sql server #benefits of schemas #create schema in sql #database schemas #how to create schema in sql server #schemas #schemas in sql server #sql server schemas #what is schema in sql server

Hire CodeIgniter Developer

Want to create unique, scalable web and app solutions?

At HourlyDeveloper.io, Expert CodeIgniter developer works particularly for you and your project.

You can Hire CodeIgniter Developer with an extensive variety of skill sets together with PHP, MySQL, PHP frameworks such as Laravel, CakePHP, and Zend, CMS, and e-commerce platforms such as WordPress, Drupal, Magento, WooCommerce, Shopify.

Consult with our experts: https://bit.ly/3hUdppScodeIgniter development services

#hire codeigniter developer #codeigniter developer #codeigniter development #codeigniter development company #codeigniter development services #codeigniter

Hire Codeigniter Developer - Hire CodeIgniter Developers or Programmers

One of the fastest, lightest, reliable, and completely capable frameworks for a business web app development is the Codeigniter framework from PHP. CodeIgniter provides out-of-the-box libraries to perform operations like Sending Emails, Uploading Files, Managing Sessions, etc.

Want to build an excellent web application for your business?

Then WebClues Infotech is the right place where you could find highly skilled and expert CodeIgniter developers for hire. Share us your requirement, Conduct desired candidate interviews, and finally choose the one best suitably, it is that easy with WebClues Infotech.

So what are you waiting for? Get going on the path to business growth with WebClues Infotech

For more inquiry click here: https://www.webcluesinfotech.com/contact-us/

Hire CodeIgniter Developer: https://www.webcluesinfotech.com/hire-codeigniter-developer/

Email: sales@webcluesinfotech.com

#hire codeigniter developers #hire codeigniter development expert #hire codeigniter developers #hire codeigniter developers or programmers #hire an offshore codeigniter development team #codeigniter programmer

Codeigniter Development Company| Codeigniter Web Developers-SISGAIN

SISGAIN brings you the best Codeigniter development services in New Jersey, USA. We provide you with applications that are safe and secure. Our team of Codeigniter web developers is experienced and skilled, they can give you a customized software application. With the help of our Codeigniter applications, we make the website world much easier. Codeigniter development helps to reduce the complexity. Our applications are simple, cost-effective, and elegant. Codeigniter applications development allows the developers to create broad solutions and provide them with great performance. We have PHP programming systems in our Codeigniter applications. For more information call us at +18444455767 or email us at hello@sisgain.com

#codeigniter development services #best codeigniter development company #codeigniter web developers #codeigniter development #codeigniter development company #software development

I am Developer


Codeigniter 4 Autocomplete Textbox From Database using Typeahead JS - Tuts Make

Autocomplete textbox search from database in codeigniter 4 using jQuery Typeahead js. In this tutorial, you will learn how to implement an autocomplete search or textbox search with database using jquery typehead js example.

This tutorial will show you step by step how to implement autocomplete search from database in codeigniter 4 app using typeahead js.

Autocomplete Textbox Search using jQuery typeahead Js From Database in Codeigniter

  • Download Codeigniter Latest
  • Basic Configurations
  • Create Table in Database
  • Setup Database Credentials
  • Create Controller
  • Create View
  • Create Route
  • Start Development Server


#codeigniter 4 ajax autocomplete search #codeigniter 4 ajax autocomplete search from database #autocomplete textbox in jquery example using database in codeigniter #search data from database in codeigniter 4 using ajax #how to search and display data from database in codeigniter 4 using ajax #autocomplete in codeigniter 4 using typeahead js