Commit Graph

155 Commits

Author SHA1 Message Date
Raymond Feng 2422c4c6f0 Update deps 2015-02-20 16:15:15 -08:00
Raymond Feng 8b860890e8 Fix the loop of models 2015-01-15 14:21:49 -08:00
Raymond Feng 0116dbfa1c Merge pull request #69 from glesage/feature/fix-missing-ok
Fixed missing 'ok' declaration
2015-01-15 14:11:49 -08:00
Geoffroy Lesage 0772223908 Set ok default to false 2015-01-15 16:09:47 -06:00
Geoffroy Lesage 0511830a12 Fixed missing 'ok' 2015-01-15 16:08:41 -06:00
Geoffroy Lesage bc2dc4e6a2 Changed default type mapping 2015-01-15 15:59:50 -06:00
Raymond Feng aa157b1050 Merge pull request #63 from glesage/feature/fix-isActual
Fixed isActual implemenation
2015-01-14 14:49:24 -08:00
Raymond Feng de299aed9f Merge pull request #60 from serkanserttop/fix-inherit-schema-from-datasource
Inherit Schema From DataSource if not defined
2015-01-14 14:48:22 -08:00
Raymond Feng 7fe8306db2 Use mysql.escape/escapeId() 2015-01-09 09:02:36 -08:00
Geoffroy Lesage 9d3ab6fc42 Fixed isActual syntax to accept optional model arg 2015-01-08 10:29:55 -06:00
Raymond Feng 5b6bc9cf83 Merge pull request #54 from saggiyogesh/master
Fix for unique index when declared in fields config
2015-01-06 10:17:38 -08:00
Geoffroy Lesage e00b0ba8cf Fixed isActual implemenation 2014-12-23 04:06:24 -06:00
Raymond Feng a82fc3f9d2 Create 'NOT NULL' constraint for required or id properties 2014-12-03 14:10:21 -08:00
Raymond Feng f9caaafe37 Better handle discovery of nullable columns 2014-12-03 14:09:52 -08:00
Serkan Serttop 78476b5a9a Inherit Schema From DataSource if not defined
If owner is not set via json in the discovery process, use the database
schema defined in the dataSource setting.
2014-11-30 02:40:41 +02:00
cpentra1 7cf69dbcb9 fix(initialization): bug fix for setting limit on number of connections in connection pool 2014-11-21 00:58:02 -05:00
yogesh 6d5ad5e470 (cherry picked from commit a6d31e8) 2014-10-21 11:51:45 +05:30
Raymond Feng 04c10fdf03 Enhance error reporting for automigrate/autoupdate 2014-09-11 12:23:32 -07:00
Raymond Feng 8a0ccf3ce3 Use table name instead of model name 2014-09-10 23:45:27 -07:00
Raymond Feng c35a00b808 Use async and make sure errors are passed to callback 2014-09-10 23:40:51 -07:00
Raymond Feng 59edab6b12 Make sure the deferred query will be invoked only once
See https://groups.google.com/forum/#!topic/loopbackjs/Ez1cyQ0D0s0
2014-08-25 13:19:47 -07:00
Raymond Feng 1bad43a4aa Add ping() 2014-08-20 16:12:46 -07:00
Raymond Feng ea51841f5e Fix MySQL conversion for embedded model instance 2014-08-20 14:25:53 -07:00
Raymond Feng 7344088cc6 Fix the createDatabase option 2014-08-19 16:36:33 -07:00
Raymond Feng 8f62b08e70 Allow properties to pass through mysql driver
See https://github.com/strongloop/loopback-connector-mysql/issues/46
2014-08-15 16:27:12 -07:00
Raymond Feng abaabff01a Fix the default length for strings to avoid row size overflow 2014-07-08 11:23:45 -07:00
Johnny Bill e52ae4b262 cannot read property of undefined fixed
fields seems to be undefined sometimes.
2014-06-16 12:32:29 +02:00
Raymond Feng 99b2950dab Fix comparison for null and boolean values 2014-06-10 16:06:16 -07:00
Raymond Feng 5542839c3e Map object/json to TEXT
See https://github.com/strongloop/loopback-connector-mysql/issues/36
2014-06-06 09:38:36 -07:00
Miroslav Bajtoš b871f603b6 Remove peer dependency on datasource-juggler
Use `SqlConnector` from loopback-connector as the base class for the
MySQL connector.

Use `dataSource.modelBuilder` instead of `juggler.ModelBuilder` to
access the function for registering new schema type.

Note: the behaviour remains backwards compatible, the connector can be
used with both old 1.x and upcoming 2.x versions of
loopback-datasource-juggler.
2014-06-03 08:46:52 +02:00
Raymond Feng 51bf6e1034 Fix sql injection and add test cases 2014-05-30 15:15:27 -07:00
Raymond Feng b9e4b64848 Fix the varchar length 2014-05-29 15:45:25 -07:00
Raymond Feng a41c7f5c7a Add like/nlike support 2014-05-29 15:16:14 -07:00
Raymond Feng 33b86b51b2 Fix object/json type mapping 2014-05-25 09:46:55 -07:00
Raymond Feng 7332f12972 Fix buildWhere 2014-05-15 10:32:31 -07:00
Raymond Feng 1103a9e919 Add support for logical operators (AND/OR) 2014-05-14 21:21:00 -07:00
Scott Anderson 0a619fb263 updateOrCreate assumes numeric primary key(s)
I removed the check to see if a property is an ID field while building the
values clause to allow it to work if primary key(s) are strings.
2014-04-16 16:37:28 -04:00
Raymond Feng 99f9151d4f Merge pull request #21 from strongloop/feature/fix-string-id
Fix the table generation for string ids
2014-04-08 10:48:20 -07:00
Raymond Feng 3165cb8bcd Remove the commented out code 2014-04-08 10:47:00 -07:00
Raymond Feng b0f636a4c4 Fix the query for discovery with current user
See https://github.com/strongloop/loopback-connector-mysql/issues/22
2014-04-08 08:35:39 -07:00
Raymond Feng fa003bb267 Fix the table generation for string ids 2014-04-07 22:16:26 -07:00
Raymond Feng f6a370921d Merge pull request #19 from vectart/master
Prevent inserting undefined values
2014-03-21 08:46:09 -07:00
Raymond Feng 8f5b09ba64 Use NULL for undefined 2014-03-21 08:35:04 -07:00
Marat Dyatko 91116f32db Prevent inserting undefined values
The following SQL query was executed:

INSERT INTO `cv` (`first_name`, `last_name`, `father_name`, `city`, `district`, `transfer`, `nationality`, `email`, `icq`, `skype`, `birth_date`, `marital_status`, `gender`, `children_status`, `id`) VALUES ('asdsd', , , '', '', , , 'i@marat.by', , , , , , , 2) ON DUPLICATE KEY UPDATE `first_name` = 'asdsd', `last_name` = undefined, `father_name` = undefined, `city` = '', `district` = '', `transfer` = undefined, `nationality` = undefined, `email` = 'i@marat.by', `icq` = undefined, `skype` = undefined, `birth_date` = undefined, `marital_status` = undefined, `gender` = undefined, `children_status` = undefined;
2014-03-08 19:44:49 +01:00
Raymond Feng 1e73a4b496 Fix merge issue 2014-02-13 08:35:52 -08:00
Raymond Feng e54aa56cee Reformat code 2014-02-12 16:57:06 -08:00
Samer Aldefai 3a06e0eae1 Update discovery.js
The issue is with the Discovery of Models. MYSQL Fields of Type 'POINT' are being discovered but loopback LDL model field provided by discovery functions is being of type 'String'.

missing code: case 'POINT': return 'GeoPoint';

for further information:
https://github.com/strongloop/loopback-connector-mysql/issues/17
2014-02-07 18:12:07 +01:00
Raymond Feng ae488942bb Fix the orderBy 2013-12-05 16:08:32 -08:00
Raymond Feng 22b9e78692 Refactor the runQuery logic into a function 2013-11-27 09:08:03 -08:00
Raymond Feng f171e74392 Improve the connector based on review feedbacks
Introduce a 'createDatabase' option to allow DB to created
Wrap the callback with connection.release
Fix typo
2013-11-27 08:42:40 -08:00
Raymond Feng aac933c39d Allow connectionLmit to be set 2013-11-26 18:50:56 -08:00
Raymond Feng 999825abea Use connection pool for MySQL 2013-11-26 17:40:31 -08:00
Raymond Feng 03cec48c85 Fix the regression caused by juggler 2013-11-20 10:54:01 -08:00
Raymond Feng 20b9147970 Remove synchronous versions of the discovery APIs
Node.js mysql driver doesn't support sync query
2013-10-28 13:11:22 -07:00
Raymond Feng 839d7b4563 Fix the table_schema name 2013-10-22 11:45:31 -07:00
Raymond Feng 20305878d2 Fix the property mapping for return values 2013-10-22 11:25:17 -07:00
Raymond Feng 2ce81681d6 Use the columnEscaped for names 2013-10-14 14:32:19 -07:00
Raymond Feng 721e680bc3 Remove console.log 2013-10-08 14:03:19 -07:00
Raymond Feng 84b38b75cc Allow custom engine and column types 2013-10-08 13:44:58 -07:00
Raymond Feng 869348df09 Fix discovery of exported keys 2013-10-08 13:44:37 -07:00
Raymond Feng 9e2879201b Map MySQL Point to GeoPoint 2013-10-07 14:54:26 -07:00
Raymond Feng 36884820fc Map GeoPoint to POINT, add more debug information 2013-10-07 14:46:05 -07:00
Raymond Feng 6b6e9144ed Add docs for README and js code 2013-10-03 14:50:38 -07:00
Raymond Feng 03840898dd Supports ',' as the delimeter 2013-08-30 08:51:32 -07:00
Raymond Feng dfa995eb17 Add aliases for some properties 2013-08-21 13:37:01 -07:00
Raymond Feng 1c648b0faf Add an optional where object for delete 2013-08-18 10:04:58 -07:00
Raymond Feng 90a3450488 Add optional models argument to autoupdate 2013-08-08 08:35:29 -07:00
Raymond Feng 9daf9ef91c Rename 'loopback-data' to 'loopback-datasource-juggler' 2013-07-30 14:21:10 -07:00
Raymond Feng 24922bc98b Add precision/scale 2013-07-25 15:03:03 -07:00
Raymond Feng 382f99b9c6 Rename schema/adapter to be dataSource/connector 2013-07-23 12:47:02 -07:00
Raymond Feng 4bedf2200c Add discovery test cases 2013-07-21 22:57:19 -07:00
Raymond Feng 9674a0308e Bring up the test cases 2013-07-21 17:27:54 -07:00
Raymond Feng fb375fdcc8 Enable discovery 2013-07-21 10:36:26 -07:00
Raymond Feng 1329b40073 Start to add discovery 2013-07-20 23:38:40 -07:00
Raymond Feng 275405521b Migrate to loopback-data 2013-07-20 22:37:59 -07:00
dgsan e109adc737 Merge pull request #41 from gierschv/fix-boolean
Fixes boolean conversion when fetching data from database
2013-06-28 11:46:37 -07:00
Vincent Giersch 6fa023250b Fixes boolean conversion when fetching data from database 2013-06-28 17:44:12 +01:00
Vincent Giersch b91d2cf241 Fixes variable name 2013-06-28 17:34:25 +01:00
dgsan 4bf7bcd2b3 After feedback changed Enum implementation to be a function.
The main side effect is that the `Enum` type can't be registered.
Use `EnumFactory()` to build an `Enum`.
2013-06-18 10:36:05 -07:00
dgsan c1616fd998 Support for Enum type in MySQL adapter. Requires patch to mainline JDB.
(See pull request: https://github.com/1602/jugglingdb/pull/296.)

After this there are several ways to use Enum with the adapter as shown in datatypes.test.js.
2013-06-17 14:25:57 -07:00
dgsan b04d9466ef Merge https://github.com/jugglingdb/mysql-adapter
* https://github.com/jugglingdb/mysql-adapter:
  Update README.md
  Fixed typo in the require statement
  0.0.1-6
  Add checking for undefined in buildWhere
  Fix injection
2013-06-13 09:41:35 -07:00
dgsan bcee504d77 Proper tests and support for connection collation/charset. Added semicov as a dev dependency because of how tests are run. 2013-06-13 09:34:31 -07:00
dgsan 3e90d39691 Merge pull request #33 from dgsan/master
Initial support of additional column types and connection collation/charset settings.
2013-06-04 15:01:43 -07:00
dgsan 8b7ac18cc3 Support for local MySQL dataTypes via the dataType model field option.
Support for setting collation/charset at the schema level.

Porting of non-running migration test to new test running layout.

Resolves issue #19. Resolves issue #28. Resolves issue #17.

Should allow for changing the types for particular columns (Int, SmallInt, BigInt, Text, Char, Float, etc.).
This seems to work with the current migration test, however use of floats and such in model instances has not been heavily tested.

Likewise, in porting migration the full suite of index migration tests has yet to be ported.
Likewise, issue with dropping columns from a model persists and seems related to `defineProperty` in JDB core choking when used to try and undefine.
2013-06-04 14:34:23 -07:00
dgsan 7ffbb1f4a4 Merge pull request #32 from dgsan/master
Resolves #31, #15
2013-05-30 13:51:11 -07:00
dgsan 9291cbafdc Resolves issues #31, #15. 2013-05-30 13:43:01 -07:00
Anatoliy Chakkaev 6c5666e23e Add checking for undefined in buildWhere 2013-04-22 08:40:12 +04:00
Anatoliy Chakkaev 400614a8c9 Fix injection 2013-04-18 22:58:21 +04:00
dgsan d7112909eb Fixes #21
Changed param for using offset with limit to 'skip' so as to match JDB core.
(Unit test to be pushed to JDB core.)
2013-04-18 09:11:03 -07:00
Vincent Giersch fa617dc35f Mistake in an undefined check 2013-04-18 15:57:56 +02:00
Vincent Giersch 1bae8a8062 Handle undefined when altering tables 2013-04-18 13:20:05 +02:00
Anatoliy Chakkaev e9eb9376fe Handle undefined and boolean 2013-04-06 14:36:32 +04:00
Anatoliy Chakkaev 4302a125ef Fix undefined handling 2013-03-27 04:38:18 +04:00
Anatoliy Chakkaev da973b56c9 Proper Point type registration 2013-02-22 01:25:15 +07:00
dgsan b15aa88681 Made additional bug-fix changes as noted in comments previously, however while I'm fairly certain the changes are correct, not as sure about how to test. I kind of wonder if changing the USING clause even needs to be supported. 2013-02-14 14:05:49 -07:00
dgsan 25202bd455 Semicolon consistency. 2013-02-14 09:52:00 -07:00
dgsan ac8f882175 This adds support for indexes to automigrate() and adds a check for the indexes existence to the migration.coffee 'should run migration' test.
All unit tests continue to pass. The code snippets for adding indexes are the declarative versions of the methods used in alterTable(), so the indexes should be consistant with previous declarations/additions.
Should resolve bug #5.
As a side node, also removed the 'UNIQUE' clause from the `id` declaration as it is redundant with the 'PRIMARY KEY' declaration so far as I'm aware and results in what seems to be a second index getting maintained for no reason. (If I'm wrong about this I'd be intrested in the explanation. MySQL does have a lot of oddities.)
2013-02-14 09:37:32 -07:00
Alex Yaroshevich 5a7a30acdd Fixup mistyped regexp
There is no «Unknown database 'dbname'» but «ER_BAD_DB_ERROR: Unknown database 'dbname'»
2013-02-04 06:03:46 +04:00
Anatoliy Chakkaev 035a8e8bac Merge branch 'master' of github.com:1602/jugglingdb-mysql 2013-01-30 22:17:12 +07:00
Anatoliy Chakkaev 718b7fd320 Specify adapter name 2013-01-30 22:15:32 +07:00