0
0
mirror of https://github.com/rbock/sqlpp11.git synced 2024-11-15 20:31:16 +08:00

Merge pull request #234 from dcojan/ppgen-add-missing-unsigned-integer-type

Ppgen add missing unsigned integer type
This commit is contained in:
Roland Bock 2018-05-13 12:49:13 +02:00 committed by GitHub
commit 42dd60d531
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
3 changed files with 65 additions and 3 deletions

View File

@ -69,6 +69,7 @@
#include <sqlpp11/ppgen/colops/foreign_key.h>
#include <sqlpp11/ppgen/colops/index.h>
#include <sqlpp11/ppgen/colops/integer.h>
#include <sqlpp11/ppgen/colops/unsigned_integer.h>
#include <sqlpp11/ppgen/colops/not_null.h>
#include <sqlpp11/ppgen/colops/null.h>
#include <sqlpp11/ppgen/colops/primary_key.h>

View File

@ -0,0 +1,52 @@
/*
* Copyright (c) 2014-2017, Damien COJAN
* All rights reserved.
*
* Redistribution and use in source and binary forms, with or without modification,
* are permitted provided that the following conditions are met:
*
* Redistributions of source code must retain the above copyright notice, this
* list of conditions and the following disclaimer.
*
* Redistributions in binary form must reproduce the above copyright notice, this
* list of conditions and the following disclaimer in the documentation and/or
* other materials provided with the distribution.
*
* THIS SOFTWARE IS PROVIDED BY THE COPYRIGHT HOLDERS AND CONTRIBUTORS "AS IS" AND
* ANY EXPRESS OR IMPLIED WARRANTIES, INCLUDING, BUT NOT LIMITED TO, THE IMPLIED
* WARRANTIES OF MERCHANTABILITY AND FITNESS FOR A PARTICULAR PURPOSE ARE
* DISCLAIMED. IN NO EVENT SHALL THE COPYRIGHT HOLDER OR CONTRIBUTORS BE LIABLE FOR
* ANY DIRECT, INDIRECT, INCIDENTAL, SPECIAL, EXEMPLARY, OR CONSEQUENTIAL DAMAGES
* (INCLUDING, BUT NOT LIMITED TO, PROCUREMENT OF SUBSTITUTE GOODS OR SERVICES;
* LOSS OF USE, DATA, OR PROFITS; OR BUSINESS INTERRUPTION) HOWEVER CAUSED AND ON
* ANY THEORY OF LIABILITY, WHETHER IN CONTRACT, STRICT LIABILITY, OR TORT
* (INCLUDING NEGLIGENCE OR OTHERWISE) ARISING IN ANY WAY OUT OF THE USE OF THIS
* SOFTWARE, EVEN IF ADVISED OF THE POSSIBILITY OF SUCH DAMAGE.
*/
// clang-format off
#ifndef _sqlpp__ppgen__colops__unsigned_integer_h
#define _sqlpp__ppgen__colops__unsigned_integer_h
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_tinyint_unsigned \
PROC_tinyint_unsigned
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_tinyint_unsigned(...) \
::sqlpp::tinyint_unsigned
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_smallint_unsigned \
PROC_smallint_unsigned
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_smallint_unsigned(...) \
::sqlpp::smallint_unsigned
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_int_unsigned \
PROC_int_unsigned
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_int_unsigned(...) \
::sqlpp::integer_unsigned
#define SQLPP_DECLARE_COLUMN_GET_TRAITS_LAZY_bigint_unsigned \
PROC_bigint_unsigned
#define SQLPP_DECLARE_COLUMN_GEN_TRAITS_PROC_bigint_unsigned(...) \
::sqlpp::bigint_unsigned
#endif // _sqlpp__ppgen__colops__unsigned_integer_h

View File

@ -52,6 +52,7 @@ SQLPP_DECLARE_TABLE(
(id , int , SQLPP_PRIMARY_KEY)
(name , varchar(255), SQLPP_NOT_NULL )
(feature, int , SQLPP_NOT_NULL )
(age , int_unsigned, SQLPP_NOT_NULL )
(level , real , SQLPP_NOT_NULL )
)
@ -77,20 +78,28 @@ int Ppgen(int, char* [])
db(insert_into(f).default_values());
auto i = insert_into(p).columns(p.name, p.feature, p.level);
i.values.add(p.name = "Roland", p.feature = 1, p.level = 3.14);
i.values.add(p.name = "Zaphod", p.feature = sqlpp::default_value, p.level = 3.14*2);
auto i = insert_into(p).columns(p.name, p.feature, p.age, p.level);
i.values.add(p.name = "Roland"
, p.feature = 1
, p.age = static_cast<unsigned int>(32)
, p.level = 3.14);
i.values.add(p.name = "Zaphod"
, p.feature = sqlpp::default_value
, p.age = static_cast<unsigned int>(16)
, p.level = 3.14*2);
db(i);
auto pi = db.prepare(
insert_into(p).set(
p.name = parameter(f.name)
,p.feature = parameter(p.feature)
,p.age = parameter(p.age)
,p.level = parameter(p.level)
)
);
pi.params.name = "likes java";
pi.params.feature = 2;
pi.params.age = 21;
pi.params.level = 3.14;
db(pi);