Apollo GraphQL在查询SQL Server表时返回null
我在SQL Server数据库中有一个表:表名为small\u customer: 这是CustomerModel.js中的代码,我在其中连接到SQL Server数据库并对类型进行续集:Apollo GraphQL在查询SQL Server表时返回null,graphql,graphql-js,Graphql,Graphql Js,我在SQL Server数据库中有一个表:表名为small\u customer: 这是CustomerModel.js中的代码,我在其中连接到SQL Server数据库并对类型进行续集: const CustomerModel= Conn.define('small_customer',{ customerid: {type: Sequelize.INTEGER}, first_name: {type: Sequelize.STRING}, last_name: {ty
const CustomerModel= Conn.define('small_customer',{
customerid: {type: Sequelize.INTEGER},
first_name: {type: Sequelize.STRING},
last_name: {type: Sequelize.STRING},
starting_date: {type:Sequelize.DATEONLY},
});
const Customer= Conn.models.small_customers;
export default Customer;
这是Query.js:
我已定义CustomerType.js:
当我编写查询以基于customerid和firstname选择客户数据时,出现以下错误:
它无法读取未定义的属性“find”
以下是我的查询示例和GraphiQL中的结果:
无法读取未定义的属性“find”
表示客户具有undefined
类型,并且您正在以Customer.find({where:args})的身份对undefined
执行find
操作
在Query.js
import { Customer } from './models/CustomerModel';
// i haven't used babel so require, if only schema is defined in CustomerModel
// const Customer = require('./models/CustomerModel');
import { CustomerModel, CustomerType, CustomerArgs } from './models/customer';
export default new GraphQLObjectType({
name: 'Query',
fields: () => {
return {
customer: {
type: CustomerType,
args: CustomerArgs,
resolve(root, args) {
return new Promise((resolve, reject) => {
return resolve(Customer.find({ where: args }));
});
}
}
}
}
});
import { CustomerModel, CustomerType, CustomerArgs} from './models/customer';
export default new GraphQLObjectType({
name: 'Query',
fields: () => {
return {
customer : {
type: CustomerType,
args: CustomerArgs,
resolve(root,args){
return new Promise((resolve, reject) => {
return resolve(Customer.find({ where: args }));
}); } }}}});
export default new GraphQLObjectType({
name: 'Customer',
fields: () => {
return {
customerid: {type:GraphQLInt},
first_name: {type: GraphQLString},
last_name : {type: GraphQLString},
starting_date: {type: GraphQLDate},
}}});
import { Customer } from './models/CustomerModel';
// i haven't used babel so require, if only schema is defined in CustomerModel
// const Customer = require('./models/CustomerModel');
import { CustomerModel, CustomerType, CustomerArgs } from './models/customer';
export default new GraphQLObjectType({
name: 'Query',
fields: () => {
return {
customer: {
type: CustomerType,
args: CustomerArgs,
resolve(root, args) {
return new Promise((resolve, reject) => {
return resolve(Customer.find({ where: args }));
});
}
}
}
}
});