Which databases Laravel supports and how can I add another one? - mysql

Based on some researches, I'm sure Laravel supports MySQL, SQLite, PostgreSQL by default. I mean we can just simply replace one of those database names with this:
Well I have two related questions:
Isn't there any list of all databases that Laravel supports by defaul? For example what about SQL Server? Can I just replace sqlserver with mysql, then does it work? In other word Does Laravel know sqlserver by default?
How can I add a new database to Laravel? For example (suppose sqlserver is not supported in Laraver by defaul) so how can I add sqlserver to Laravel?

Currently, Laravel 5.3 supports four databases:
MySQL
Postgres
SQLite
SQL Server (Driver 'sqlsrv')
Refer Laravel Docs - Database
Adding a new Database will always going to take great amount of efforts. Because you will need to write at least whole DB Façade (Forget about the Eloquent ORM Support) to maintain the cleanliness and ease of Laravel Framework.
This includes basic CRUD , database structures & Schema and Eloquent model and Query builder with support for your Database.
As Laravel supports most used SQL and No-SQL Databases by default, there are plenty of open source libraries for other databases, too.
For Example, Laravel MongoDB is a good open source library built using Laravel Core APIs.

Related

MySQL Views Support in Sequelize ORM

I woululd like to use sequelize as my ORM in a web app I am building. The app will be based on NodeJS - Express for constructing and MySQL as its relational database. What I haven't found anywhere on documentaino or on the net, is how to declare in sequelize models the "Views" that exist in my MySQL Database....
Is the only way to manually construct the query SQL? Thanks
You can use Node ORM2, which has support for MySQL views as well.
Try at
https://github.com/dresende/node-orm2

MySQL structure to SQLite

I am trying to use MySQL workbench to export my model to SQLite. I don't need the data just the structure. Do you have any suggestion? Exporting to SQL and creating tables with SQLite3 using that won't work as there are several differences between MySQL and SQLite syntaxes.
From what I know there's no tool that can convert a MySQL SQL script to SQLite. You will probably have to manually rework the generated SQL. Or you could create a MySQL schema from your model and use one of the available tools to convert that schema. Needs a detour via an existing MySQL schema, however.

Supporting multiple databases with entity framework

My client has an asp.net application - a product used my several customers. It connects to MSSQL database using good old ado.net and stored procedures. I am supposed to rewrite the application so that the application supports MySQL and Oracle in addition to MSSQL. I am supposed to use entity framework to do this. I am new to EF. So can any one guide me as to how this can be done? Where should I start?

Multitenancy: Hibernate with MySQL

Multi-Tenant Data Architecture
Separate Databases : Supported by Hibernate 4.0.
Shared Database, Separate Schemas : Supported by Hibernate 4.0.
Shared Database, Shared Schema : Planned for Hibernate 5.0 (DISCRIMINATOR).
However, (unlike Oracle or PostGre) MySQL doesn’t seem to have concept of schemas?, and so if I am using Hibernate + MySQL to achieve multitenancy, is it true that the only choice I am left over with is Separate Database?
I do not think so. You can create multiple schemas in a single data base in mysql.
So you can go with multiple schemas
You Can use : The Hibernate 4.0 ConnectionProvider
for the same you could switch over the appropriate tenant databases on a data base call when your session is trying to make a Connection to a datasource.
Please check with MultiTenantConnectionIdentifier and MultiTenantConnectionProvider availabled in Hibernate 4.0
For more help you can contact at : sonisatyam92#gmail.com

Not possible using NHibernate?

I am new learner to NHibernate. I am trying out samples with MSSQL database. We all know query using MSSQL is different from MYSQL database. If i need to use this sample for MYSQL, do i need to change anything other than configuration settings? Also i need to know is there anything that is not possible because of NHibernate?
There are multiple ways of configuring NHibernate.
What you need to set is called:
The dialect is responsible for converting IQueryable, ICriteria or so called HQL (hibernate query language) to the SQL of the corresponding database.
But if you want to have this general, you must pay attention to the ID (in some cases even use locking). SQL has so called auto-identity, while Oracle works with sequencers. But NHibernate has it's own ways of generating identity.
I would advise you to:
use latest NHibernate (not older than 3.3.x.x)
try out fluent nhibernate mapping
eventually find some example on nhibernate + fluent + unity/structure map (DI framework) - mostly you find something related to DDD projects